diff --git a/sdk/storage/azure-storage-blob/CHANGELOG.md b/sdk/storage/azure-storage-blob/CHANGELOG.md index 68be0b607aee..957ce02f7e49 100644 --- a/sdk/storage/azure-storage-blob/CHANGELOG.md +++ b/sdk/storage/azure-storage-blob/CHANGELOG.md @@ -1,7 +1,6 @@ # Release History -## 12.8.1b1 (Unreleased) - +## 12.9.0b1 (Unreleased) ## 12.8.0 (2021-03-01) **Stable release of preview features** diff --git a/sdk/storage/azure-storage-blob/azure/storage/blob/__init__.py b/sdk/storage/azure-storage-blob/azure/storage/blob/__init__.py index 9164961ea10a..99075baf1ea1 100644 --- a/sdk/storage/azure-storage-blob/azure/storage/blob/__init__.py +++ b/sdk/storage/azure-storage-blob/azure/storage/blob/__init__.py @@ -54,8 +54,10 @@ BlobQueryError, DelimitedJsonDialect, DelimitedTextDialect, + ParquetDialect, ArrowDialect, ArrowType, + QuickQueryDialect, ObjectReplicationPolicy, ObjectReplicationRule ) @@ -225,8 +227,10 @@ def download_blob_from_url( 'BlobQueryError', 'DelimitedJsonDialect', 'DelimitedTextDialect', + 'ParquetDialect', 'ArrowDialect', 'ArrowType', + 'QuickQueryDialect', 'BlobQueryReader', 'ObjectReplicationPolicy', 'ObjectReplicationRule' diff --git a/sdk/storage/azure-storage-blob/azure/storage/blob/_blob_client.py b/sdk/storage/azure-storage-blob/azure/storage/blob/_blob_client.py index 1b3203c5170a..12912f50df4e 100644 --- a/sdk/storage/azure-storage-blob/azure/storage/blob/_blob_client.py +++ b/sdk/storage/azure-storage-blob/azure/storage/blob/_blob_client.py @@ -55,7 +55,8 @@ upload_block_blob, upload_append_blob, upload_page_blob, _any_conditions) -from ._models import BlobType, BlobBlock, BlobProperties, BlobQueryError +from ._models import BlobType, BlobBlock, BlobProperties, BlobQueryError, ParquetDialect, QuickQueryDialect, \ + DelimitedJsonDialect, DelimitedTextDialect from ._download import StorageStreamDownloader from ._lease import BlobLeaseClient @@ -832,16 +833,32 @@ def _quick_query_options(self, query_expression, # type: (str, **Any) -> Dict[str, Any] delimiter = '\n' input_format = kwargs.pop('blob_format', None) - if input_format: + if input_format == QuickQueryDialect.ParquetDialect: + input_format = ParquetDialect() + if input_format == QuickQueryDialect.DelimitedJsonDialect: + input_format = DelimitedJsonDialect() + if input_format == QuickQueryDialect.DelimitedTextDialect: + input_format = DelimitedTextDialect() + input_parquet_format = isinstance(input_format, ParquetDialect) + if input_format and not input_parquet_format: try: delimiter = input_format.lineterminator except AttributeError: try: delimiter = input_format.delimiter except AttributeError: - raise ValueError("The Type of blob_format can only be DelimitedTextDialect or DelimitedJsonDialect") + raise ValueError("The Type of blob_format can only be DelimitedTextDialect or " + "DelimitedJsonDialect or ParquetDialect") output_format = kwargs.pop('output_format', None) + if output_format == QuickQueryDialect.ParquetDialect: + output_format = ParquetDialect() + if output_format == QuickQueryDialect.DelimitedJsonDialect: + output_format = DelimitedJsonDialect() + if output_format == QuickQueryDialect.DelimitedTextDialect: + output_format = DelimitedTextDialect() if output_format: + if isinstance(output_format, ParquetDialect): + raise ValueError("ParquetDialect is invalid as an output format.") try: delimiter = output_format.lineterminator except AttributeError: @@ -850,7 +867,7 @@ def _quick_query_options(self, query_expression, except AttributeError: pass else: - output_format = input_format + output_format = input_format if not input_parquet_format else None query_request = QueryRequest( expression=query_expression, input_serialization=serialize_query_format(input_format), @@ -894,14 +911,18 @@ def query_blob(self, query_expression, **kwargs): :keyword blob_format: Optional. Defines the serialization of the data currently stored in the blob. The default is to treat the blob data as CSV data formatted in the default dialect. This can be overridden with - a custom DelimitedTextDialect, or alternatively a DelimitedJsonDialect. + a custom DelimitedTextDialect, or alternatively a DelimitedJsonDialect or ParquetDialect. + These dialects can be passed through their respective classes, the QuickQueryDialect enum or as a string :paramtype blob_format: ~azure.storage.blob.DelimitedTextDialect or ~azure.storage.blob.DelimitedJsonDialect + or ~azure.storage.blob.ParquetDialect or ~azure.storage.blob.QuickQueryDialect or str :keyword output_format: Optional. Defines the output serialization for the data stream. By default the data will be returned - as it is represented in the blob. By providing an output format, the blob data will be reformatted - according to that profile. This value can be a DelimitedTextDialect or a DelimitedJsonDialect. - :paramtype output_format: ~azure.storage.blob.DelimitedTextDialect, ~azure.storage.blob.DelimitedJsonDialect - or list[~azure.storage.blob.ArrowDialect] + as it is represented in the blob (Parquet formats default to DelimitedTextDialect). + By providing an output format, the blob data will be reformatted according to that profile. + This value can be a DelimitedTextDialect or a DelimitedJsonDialect or ArrowDialect. + These dialects can be passed through their respective classes, the QuickQueryDialect enum or as a string + :paramtype output_format: ~azure.storage.blob.DelimitedTextDialect or ~azure.storage.blob.DelimitedJsonDialect + or list[~azure.storage.blob.ArrowDialect] or ~azure.storage.blob.QuickQueryDialect or str :keyword lease: Required if the blob has an active lease. Value can be a BlobLeaseClient object or the lease ID as a string. diff --git a/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/_azure_blob_storage.py b/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/_azure_blob_storage.py index dff7e12276c2..eed3bbde964c 100644 --- a/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/_azure_blob_storage.py +++ b/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/_azure_blob_storage.py @@ -15,6 +15,8 @@ # pylint: disable=unused-import,ungrouped-imports from typing import Any + from azure.core.pipeline.transport import HttpRequest, HttpResponse + from ._configuration import AzureBlobStorageConfiguration from .operations import ServiceOperations from .operations import ContainerOperations @@ -77,6 +79,24 @@ def __init__( self.block_blob = BlockBlobOperations( self._client, self._config, self._serialize, self._deserialize) + def _send_request(self, http_request, **kwargs): + # type: (HttpRequest, Any) -> HttpResponse + """Runs the network request through the client's chained policies. + + :param http_request: The network request you want to make. Required. + :type http_request: ~azure.core.pipeline.transport.HttpRequest + :keyword bool stream: Whether the response payload will be streamed. Defaults to True. + :return: The response of your network call. Does not do error handling on your response. + :rtype: ~azure.core.pipeline.transport.HttpResponse + """ + path_format_arguments = { + 'url': self._serialize.url("self._config.url", self._config.url, 'str', skip_quote=True), + } + http_request.url = self._client.format_url(http_request.url, **path_format_arguments) + stream = kwargs.pop("stream", True) + pipeline_response = self._client._pipeline.run(http_request, stream=stream, **kwargs) + return pipeline_response.http_response + def close(self): # type: () -> None self._client.close() diff --git a/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/_configuration.py b/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/_configuration.py index fb74f9ee4f8b..0e0d578e8aa6 100644 --- a/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/_configuration.py +++ b/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/_configuration.py @@ -38,7 +38,7 @@ def __init__( super(AzureBlobStorageConfiguration, self).__init__(**kwargs) self.url = url - self.version = "2020-06-12" + self.version = "2020-08-04" kwargs.setdefault('sdk_moniker', 'azureblobstorage/{}'.format(VERSION)) self._configure(**kwargs) diff --git a/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/aio/_azure_blob_storage.py b/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/aio/_azure_blob_storage.py index b53703478e99..77935aaf1e03 100644 --- a/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/aio/_azure_blob_storage.py +++ b/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/aio/_azure_blob_storage.py @@ -9,6 +9,7 @@ from typing import Any from azure.core import AsyncPipelineClient +from azure.core.pipeline.transport import AsyncHttpResponse, HttpRequest from msrest import Deserializer, Serializer from ._configuration import AzureBlobStorageConfiguration @@ -72,6 +73,23 @@ def __init__( self.block_blob = BlockBlobOperations( self._client, self._config, self._serialize, self._deserialize) + async def _send_request(self, http_request: HttpRequest, **kwargs: Any) -> AsyncHttpResponse: + """Runs the network request through the client's chained policies. + + :param http_request: The network request you want to make. Required. + :type http_request: ~azure.core.pipeline.transport.HttpRequest + :keyword bool stream: Whether the response payload will be streamed. Defaults to True. + :return: The response of your network call. Does not do error handling on your response. + :rtype: ~azure.core.pipeline.transport.AsyncHttpResponse + """ + path_format_arguments = { + 'url': self._serialize.url("self._config.url", self._config.url, 'str', skip_quote=True), + } + http_request.url = self._client.format_url(http_request.url, **path_format_arguments) + stream = kwargs.pop("stream", True) + pipeline_response = await self._client._pipeline.run(http_request, stream=stream, **kwargs) + return pipeline_response.http_response + async def close(self) -> None: await self._client.close() diff --git a/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/aio/_configuration.py b/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/aio/_configuration.py index 1924efa17196..c230fe87c2d9 100644 --- a/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/aio/_configuration.py +++ b/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/aio/_configuration.py @@ -33,7 +33,7 @@ def __init__( super(AzureBlobStorageConfiguration, self).__init__(**kwargs) self.url = url - self.version = "2020-06-12" + self.version = "2020-08-04" kwargs.setdefault('sdk_moniker', 'azureblobstorage/{}'.format(VERSION)) self._configure(**kwargs) diff --git a/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/aio/operations/_append_blob_operations.py b/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/aio/operations/_append_blob_operations.py index 333cb9f0e5aa..ec776d1a475b 100644 --- a/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/aio/operations/_append_blob_operations.py +++ b/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/aio/operations/_append_blob_operations.py @@ -6,7 +6,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- import datetime -from typing import Any, Callable, Dict, Generic, IO, Optional, TypeVar +from typing import Any, Callable, Dict, Generic, IO, Optional, TypeVar, Union import warnings from azure.core.exceptions import ClientAuthenticationError, HttpResponseError, ResourceExistsError, ResourceNotFoundError, map_error @@ -48,6 +48,9 @@ async def create( encryption_algorithm: Optional[str] = "AES256", request_id_parameter: Optional[str] = None, blob_tags_string: Optional[str] = None, + immutability_policy_expiry: Optional[datetime.datetime] = None, + immutability_policy_mode: Optional[Union[str, "_models.BlobImmutabilityPolicyMode"]] = None, + legal_hold: Optional[bool] = None, blob_http_headers: Optional["_models.BlobHTTPHeaders"] = None, lease_access_conditions: Optional["_models.LeaseAccessConditions"] = None, cpk_info: Optional["_models.CpkInfo"] = None, @@ -80,6 +83,13 @@ async def create( :type request_id_parameter: str :param blob_tags_string: Optional. Used to set blob tags in various blob operations. :type blob_tags_string: str + :param immutability_policy_expiry: Specifies the date time when the blobs immutability policy + is set to expire. + :type immutability_policy_expiry: ~datetime.datetime + :param immutability_policy_mode: Specifies the immutability policy mode to set on the blob. + :type immutability_policy_mode: str or ~azure.storage.blob.models.BlobImmutabilityPolicyMode + :param legal_hold: Specified if a legal hold should be set on the blob. + :type legal_hold: bool :param blob_http_headers: Parameter group. :type blob_http_headers: ~azure.storage.blob.models.BlobHTTPHeaders :param lease_access_conditions: Parameter group. @@ -194,6 +204,12 @@ async def create( header_parameters['x-ms-client-request-id'] = self._serialize.header("request_id_parameter", request_id_parameter, 'str') if blob_tags_string is not None: header_parameters['x-ms-tags'] = self._serialize.header("blob_tags_string", blob_tags_string, 'str') + if immutability_policy_expiry is not None: + header_parameters['x-ms-immutability-policy-until-date'] = self._serialize.header("immutability_policy_expiry", immutability_policy_expiry, 'rfc-1123') + if immutability_policy_mode is not None: + header_parameters['x-ms-immutability-policy-mode'] = self._serialize.header("immutability_policy_mode", immutability_policy_mode, 'str') + if legal_hold is not None: + header_parameters['x-ms-legal-hold'] = self._serialize.header("legal_hold", legal_hold, 'bool') header_parameters['Accept'] = self._serialize.header("accept", accept, 'str') request = self._client.put(url, query_parameters, header_parameters) @@ -202,7 +218,7 @@ async def create( if response.status_code not in [201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -374,7 +390,7 @@ async def append_block( if response.status_code not in [201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -577,7 +593,7 @@ async def append_block_from_url( if response.status_code not in [201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -691,7 +707,7 @@ async def seal( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} diff --git a/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/aio/operations/_blob_operations.py b/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/aio/operations/_blob_operations.py index af2d12e92779..0d2ff8349bb7 100644 --- a/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/aio/operations/_blob_operations.py +++ b/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/aio/operations/_blob_operations.py @@ -179,7 +179,7 @@ async def download( if response.status_code not in [200, 206]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -223,6 +223,9 @@ async def download( response_headers['x-ms-tag-count']=self._deserialize('long', response.headers.get('x-ms-tag-count')) response_headers['x-ms-blob-sealed']=self._deserialize('bool', response.headers.get('x-ms-blob-sealed')) response_headers['x-ms-last-access-time']=self._deserialize('rfc-1123', response.headers.get('x-ms-last-access-time')) + response_headers['x-ms-immutability-policy-until-date']=self._deserialize('rfc-1123', response.headers.get('x-ms-immutability-policy-until-date')) + response_headers['x-ms-immutability-policy-mode']=self._deserialize('str', response.headers.get('x-ms-immutability-policy-mode')) + response_headers['x-ms-legal-hold']=self._deserialize('bool', response.headers.get('x-ms-legal-hold')) deserialized = response.stream_download(self._client._pipeline) if response.status_code == 206: @@ -266,6 +269,9 @@ async def download( response_headers['x-ms-tag-count']=self._deserialize('long', response.headers.get('x-ms-tag-count')) response_headers['x-ms-blob-sealed']=self._deserialize('bool', response.headers.get('x-ms-blob-sealed')) response_headers['x-ms-last-access-time']=self._deserialize('rfc-1123', response.headers.get('x-ms-last-access-time')) + response_headers['x-ms-immutability-policy-until-date']=self._deserialize('rfc-1123', response.headers.get('x-ms-immutability-policy-until-date')) + response_headers['x-ms-immutability-policy-mode']=self._deserialize('str', response.headers.get('x-ms-immutability-policy-mode')) + response_headers['x-ms-legal-hold']=self._deserialize('bool', response.headers.get('x-ms-legal-hold')) deserialized = response.stream_download(self._client._pipeline) if cls: @@ -394,7 +400,7 @@ async def get_properties( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -444,6 +450,9 @@ async def get_properties( response_headers['x-ms-blob-sealed']=self._deserialize('bool', response.headers.get('x-ms-blob-sealed')) response_headers['x-ms-rehydrate-priority']=self._deserialize('str', response.headers.get('x-ms-rehydrate-priority')) response_headers['x-ms-last-access-time']=self._deserialize('rfc-1123', response.headers.get('x-ms-last-access-time')) + response_headers['x-ms-immutability-policy-until-date']=self._deserialize('rfc-1123', response.headers.get('x-ms-immutability-policy-until-date')) + response_headers['x-ms-immutability-policy-mode']=self._deserialize('str', response.headers.get('x-ms-immutability-policy-mode')) + response_headers['x-ms-legal-hold']=self._deserialize('bool', response.headers.get('x-ms-legal-hold')) if cls: return cls(pipeline_response, None, response_headers) @@ -574,7 +583,7 @@ async def delete( if response.status_code not in [202]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -697,7 +706,7 @@ async def set_access_control( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.DataLakeStorageError, response) + error = self._deserialize.failsafe_deserialize(_models.DataLakeStorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -804,7 +813,7 @@ async def get_access_control( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.DataLakeStorageError, response) + error = self._deserialize.failsafe_deserialize(_models.DataLakeStorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -995,7 +1004,7 @@ async def rename( if response.status_code not in [201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.DataLakeStorageError, response) + error = self._deserialize.failsafe_deserialize(_models.DataLakeStorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -1066,7 +1075,7 @@ async def undelete( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -1143,7 +1152,7 @@ async def set_expiry( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -1274,7 +1283,7 @@ async def set_http_headers( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -1291,6 +1300,237 @@ async def set_http_headers( set_http_headers.metadata = {'url': '/{containerName}/{blob}'} # type: ignore + async def set_immutability_policy( + self, + timeout: Optional[int] = None, + request_id_parameter: Optional[str] = None, + immutability_policy_expiry: Optional[datetime.datetime] = None, + immutability_policy_mode: Optional[Union[str, "_models.BlobImmutabilityPolicyMode"]] = None, + modified_access_conditions: Optional["_models.ModifiedAccessConditions"] = None, + **kwargs + ) -> None: + """The Set Immutability Policy operation sets the immutability policy on the blob. + + :param timeout: The timeout parameter is expressed in seconds. For more information, see + :code:`Setting Timeouts for Blob Service Operations.`. + :type timeout: int + :param request_id_parameter: Provides a client-generated, opaque value with a 1 KB character + limit that is recorded in the analytics logs when storage analytics logging is enabled. + :type request_id_parameter: str + :param immutability_policy_expiry: Specifies the date time when the blobs immutability policy + is set to expire. + :type immutability_policy_expiry: ~datetime.datetime + :param immutability_policy_mode: Specifies the immutability policy mode to set on the blob. + :type immutability_policy_mode: str or ~azure.storage.blob.models.BlobImmutabilityPolicyMode + :param modified_access_conditions: Parameter group. + :type modified_access_conditions: ~azure.storage.blob.models.ModifiedAccessConditions + :keyword callable cls: A custom type or function that will be passed the direct response + :return: None, or the result of cls(response) + :rtype: None + :raises: ~azure.core.exceptions.HttpResponseError + """ + cls = kwargs.pop('cls', None) # type: ClsType[None] + error_map = { + 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError + } + error_map.update(kwargs.pop('error_map', {})) + + _if_unmodified_since = None + if modified_access_conditions is not None: + _if_unmodified_since = modified_access_conditions.if_unmodified_since + comp = "immutabilityPolicies" + accept = "application/xml" + + # Construct URL + url = self.set_immutability_policy.metadata['url'] # type: ignore + path_format_arguments = { + 'url': self._serialize.url("self._config.url", self._config.url, 'str', skip_quote=True), + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} # type: Dict[str, Any] + query_parameters['comp'] = self._serialize.query("comp", comp, 'str') + if timeout is not None: + query_parameters['timeout'] = self._serialize.query("timeout", timeout, 'int', minimum=0) + + # Construct headers + header_parameters = {} # type: Dict[str, Any] + header_parameters['x-ms-version'] = self._serialize.header("self._config.version", self._config.version, 'str') + if request_id_parameter is not None: + header_parameters['x-ms-client-request-id'] = self._serialize.header("request_id_parameter", request_id_parameter, 'str') + if _if_unmodified_since is not None: + header_parameters['If-Unmodified-Since'] = self._serialize.header("if_unmodified_since", _if_unmodified_since, 'rfc-1123') + if immutability_policy_expiry is not None: + header_parameters['x-ms-immutability-policy-until-date'] = self._serialize.header("immutability_policy_expiry", immutability_policy_expiry, 'rfc-1123') + if immutability_policy_mode is not None: + header_parameters['x-ms-immutability-policy-mode'] = self._serialize.header("immutability_policy_mode", immutability_policy_mode, 'str') + header_parameters['Accept'] = self._serialize.header("accept", accept, 'str') + + request = self._client.put(url, query_parameters, header_parameters) + pipeline_response = await self._client._pipeline.run(request, stream=False, **kwargs) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) + raise HttpResponseError(response=response, model=error) + + response_headers = {} + response_headers['x-ms-client-request-id']=self._deserialize('str', response.headers.get('x-ms-client-request-id')) + response_headers['x-ms-request-id']=self._deserialize('str', response.headers.get('x-ms-request-id')) + response_headers['x-ms-version']=self._deserialize('str', response.headers.get('x-ms-version')) + response_headers['Date']=self._deserialize('rfc-1123', response.headers.get('Date')) + response_headers['x-ms-immutability-policy-until-date']=self._deserialize('rfc-1123', response.headers.get('x-ms-immutability-policy-until-date')) + response_headers['x-ms-immutability-policy-mode']=self._deserialize('str', response.headers.get('x-ms-immutability-policy-mode')) + + if cls: + return cls(pipeline_response, None, response_headers) + + set_immutability_policy.metadata = {'url': '/{containerName}/{blob}'} # type: ignore + + async def delete_immutability_policy( + self, + timeout: Optional[int] = None, + request_id_parameter: Optional[str] = None, + **kwargs + ) -> None: + """The Delete Immutability Policy operation deletes the immutability policy on the blob. + + :param timeout: The timeout parameter is expressed in seconds. For more information, see + :code:`Setting Timeouts for Blob Service Operations.`. + :type timeout: int + :param request_id_parameter: Provides a client-generated, opaque value with a 1 KB character + limit that is recorded in the analytics logs when storage analytics logging is enabled. + :type request_id_parameter: str + :keyword callable cls: A custom type or function that will be passed the direct response + :return: None, or the result of cls(response) + :rtype: None + :raises: ~azure.core.exceptions.HttpResponseError + """ + cls = kwargs.pop('cls', None) # type: ClsType[None] + error_map = { + 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError + } + error_map.update(kwargs.pop('error_map', {})) + comp = "immutabilityPolicies" + accept = "application/xml" + + # Construct URL + url = self.delete_immutability_policy.metadata['url'] # type: ignore + path_format_arguments = { + 'url': self._serialize.url("self._config.url", self._config.url, 'str', skip_quote=True), + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} # type: Dict[str, Any] + query_parameters['comp'] = self._serialize.query("comp", comp, 'str') + if timeout is not None: + query_parameters['timeout'] = self._serialize.query("timeout", timeout, 'int', minimum=0) + + # Construct headers + header_parameters = {} # type: Dict[str, Any] + header_parameters['x-ms-version'] = self._serialize.header("self._config.version", self._config.version, 'str') + if request_id_parameter is not None: + header_parameters['x-ms-client-request-id'] = self._serialize.header("request_id_parameter", request_id_parameter, 'str') + header_parameters['Accept'] = self._serialize.header("accept", accept, 'str') + + request = self._client.delete(url, query_parameters, header_parameters) + pipeline_response = await self._client._pipeline.run(request, stream=False, **kwargs) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) + raise HttpResponseError(response=response, model=error) + + response_headers = {} + response_headers['x-ms-client-request-id']=self._deserialize('str', response.headers.get('x-ms-client-request-id')) + response_headers['x-ms-request-id']=self._deserialize('str', response.headers.get('x-ms-request-id')) + response_headers['x-ms-version']=self._deserialize('str', response.headers.get('x-ms-version')) + response_headers['Date']=self._deserialize('rfc-1123', response.headers.get('Date')) + + if cls: + return cls(pipeline_response, None, response_headers) + + delete_immutability_policy.metadata = {'url': '/{containerName}/{blob}'} # type: ignore + + async def set_legal_hold( + self, + legal_hold: bool, + timeout: Optional[int] = None, + request_id_parameter: Optional[str] = None, + **kwargs + ) -> None: + """The Set Legal Hold operation sets a legal hold on the blob. + + :param legal_hold: Specified if a legal hold should be set on the blob. + :type legal_hold: bool + :param timeout: The timeout parameter is expressed in seconds. For more information, see + :code:`Setting Timeouts for Blob Service Operations.`. + :type timeout: int + :param request_id_parameter: Provides a client-generated, opaque value with a 1 KB character + limit that is recorded in the analytics logs when storage analytics logging is enabled. + :type request_id_parameter: str + :keyword callable cls: A custom type or function that will be passed the direct response + :return: None, or the result of cls(response) + :rtype: None + :raises: ~azure.core.exceptions.HttpResponseError + """ + cls = kwargs.pop('cls', None) # type: ClsType[None] + error_map = { + 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError + } + error_map.update(kwargs.pop('error_map', {})) + comp = "legalhold" + accept = "application/xml" + + # Construct URL + url = self.set_legal_hold.metadata['url'] # type: ignore + path_format_arguments = { + 'url': self._serialize.url("self._config.url", self._config.url, 'str', skip_quote=True), + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} # type: Dict[str, Any] + query_parameters['comp'] = self._serialize.query("comp", comp, 'str') + if timeout is not None: + query_parameters['timeout'] = self._serialize.query("timeout", timeout, 'int', minimum=0) + + # Construct headers + header_parameters = {} # type: Dict[str, Any] + header_parameters['x-ms-version'] = self._serialize.header("self._config.version", self._config.version, 'str') + if request_id_parameter is not None: + header_parameters['x-ms-client-request-id'] = self._serialize.header("request_id_parameter", request_id_parameter, 'str') + header_parameters['x-ms-legal-hold'] = self._serialize.header("legal_hold", legal_hold, 'bool') + header_parameters['Accept'] = self._serialize.header("accept", accept, 'str') + + request = self._client.put(url, query_parameters, header_parameters) + pipeline_response = await self._client._pipeline.run(request, stream=False, **kwargs) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) + raise HttpResponseError(response=response, model=error) + + response_headers = {} + response_headers['x-ms-client-request-id']=self._deserialize('str', response.headers.get('x-ms-client-request-id')) + response_headers['x-ms-request-id']=self._deserialize('str', response.headers.get('x-ms-request-id')) + response_headers['x-ms-version']=self._deserialize('str', response.headers.get('x-ms-version')) + response_headers['Date']=self._deserialize('rfc-1123', response.headers.get('Date')) + response_headers['x-ms-legal-hold']=self._deserialize('bool', response.headers.get('x-ms-legal-hold')) + + if cls: + return cls(pipeline_response, None, response_headers) + + set_legal_hold.metadata = {'url': '/{containerName}/{blob}'} # type: ignore + async def set_metadata( self, timeout: Optional[int] = None, @@ -1417,7 +1657,7 @@ async def set_metadata( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -1533,7 +1773,7 @@ async def acquire_lease( if response.status_code not in [201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -1636,7 +1876,7 @@ async def release_lease( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -1738,7 +1978,7 @@ async def renew_lease( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -1847,7 +2087,7 @@ async def change_lease( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -1957,7 +2197,7 @@ async def break_lease( if response.status_code not in [202]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -2099,7 +2339,7 @@ async def create_snapshot( if response.status_code not in [201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -2128,6 +2368,9 @@ async def start_copy_from_url( request_id_parameter: Optional[str] = None, blob_tags_string: Optional[str] = None, seal_blob: Optional[bool] = None, + immutability_policy_expiry: Optional[datetime.datetime] = None, + immutability_policy_mode: Optional[Union[str, "_models.BlobImmutabilityPolicyMode"]] = None, + legal_hold: Optional[bool] = None, source_modified_access_conditions: Optional["_models.SourceModifiedAccessConditions"] = None, modified_access_conditions: Optional["_models.ModifiedAccessConditions"] = None, lease_access_conditions: Optional["_models.LeaseAccessConditions"] = None, @@ -2165,6 +2408,13 @@ async def start_copy_from_url( :param seal_blob: Overrides the sealed state of the destination blob. Service version 2019-12-12 and newer. :type seal_blob: bool + :param immutability_policy_expiry: Specifies the date time when the blobs immutability policy + is set to expire. + :type immutability_policy_expiry: ~datetime.datetime + :param immutability_policy_mode: Specifies the immutability policy mode to set on the blob. + :type immutability_policy_mode: str or ~azure.storage.blob.models.BlobImmutabilityPolicyMode + :param legal_hold: Specified if a legal hold should be set on the blob. + :type legal_hold: bool :param source_modified_access_conditions: Parameter group. :type source_modified_access_conditions: ~azure.storage.blob.models.SourceModifiedAccessConditions :param modified_access_conditions: Parameter group. @@ -2259,6 +2509,12 @@ async def start_copy_from_url( header_parameters['x-ms-tags'] = self._serialize.header("blob_tags_string", blob_tags_string, 'str') if seal_blob is not None: header_parameters['x-ms-seal-blob'] = self._serialize.header("seal_blob", seal_blob, 'bool') + if immutability_policy_expiry is not None: + header_parameters['x-ms-immutability-policy-until-date'] = self._serialize.header("immutability_policy_expiry", immutability_policy_expiry, 'rfc-1123') + if immutability_policy_mode is not None: + header_parameters['x-ms-immutability-policy-mode'] = self._serialize.header("immutability_policy_mode", immutability_policy_mode, 'str') + if legal_hold is not None: + header_parameters['x-ms-legal-hold'] = self._serialize.header("legal_hold", legal_hold, 'bool') header_parameters['Accept'] = self._serialize.header("accept", accept, 'str') request = self._client.put(url, query_parameters, header_parameters) @@ -2267,7 +2523,7 @@ async def start_copy_from_url( if response.status_code not in [202]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -2295,6 +2551,9 @@ async def copy_from_url( request_id_parameter: Optional[str] = None, source_content_md5: Optional[bytearray] = None, blob_tags_string: Optional[str] = None, + immutability_policy_expiry: Optional[datetime.datetime] = None, + immutability_policy_mode: Optional[Union[str, "_models.BlobImmutabilityPolicyMode"]] = None, + legal_hold: Optional[bool] = None, source_modified_access_conditions: Optional["_models.SourceModifiedAccessConditions"] = None, modified_access_conditions: Optional["_models.ModifiedAccessConditions"] = None, lease_access_conditions: Optional["_models.LeaseAccessConditions"] = None, @@ -2330,6 +2589,13 @@ async def copy_from_url( :type source_content_md5: bytearray :param blob_tags_string: Optional. Used to set blob tags in various blob operations. :type blob_tags_string: str + :param immutability_policy_expiry: Specifies the date time when the blobs immutability policy + is set to expire. + :type immutability_policy_expiry: ~datetime.datetime + :param immutability_policy_mode: Specifies the immutability policy mode to set on the blob. + :type immutability_policy_mode: str or ~azure.storage.blob.models.BlobImmutabilityPolicyMode + :param legal_hold: Specified if a legal hold should be set on the blob. + :type legal_hold: bool :param source_modified_access_conditions: Parameter group. :type source_modified_access_conditions: ~azure.storage.blob.models.SourceModifiedAccessConditions :param modified_access_conditions: Parameter group. @@ -2420,6 +2686,12 @@ async def copy_from_url( header_parameters['x-ms-source-content-md5'] = self._serialize.header("source_content_md5", source_content_md5, 'bytearray') if blob_tags_string is not None: header_parameters['x-ms-tags'] = self._serialize.header("blob_tags_string", blob_tags_string, 'str') + if immutability_policy_expiry is not None: + header_parameters['x-ms-immutability-policy-until-date'] = self._serialize.header("immutability_policy_expiry", immutability_policy_expiry, 'rfc-1123') + if immutability_policy_mode is not None: + header_parameters['x-ms-immutability-policy-mode'] = self._serialize.header("immutability_policy_mode", immutability_policy_mode, 'str') + if legal_hold is not None: + header_parameters['x-ms-legal-hold'] = self._serialize.header("legal_hold", legal_hold, 'bool') header_parameters['Accept'] = self._serialize.header("accept", accept, 'str') request = self._client.put(url, query_parameters, header_parameters) @@ -2428,7 +2700,7 @@ async def copy_from_url( if response.status_code not in [202]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -2520,7 +2792,7 @@ async def abort_copy_from_url( if response.status_code not in [204]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -2634,7 +2906,7 @@ async def set_tier( if response.status_code not in [200, 202]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -2696,7 +2968,7 @@ async def get_account_info( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -2839,7 +3111,7 @@ async def query( if response.status_code not in [200, 206]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -3006,7 +3278,7 @@ async def get_tags( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -3122,7 +3394,7 @@ async def set_tags( if response.status_code not in [204]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} diff --git a/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/aio/operations/_block_blob_operations.py b/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/aio/operations/_block_blob_operations.py index 67c90b0bf9d4..0e0ddab5ba35 100644 --- a/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/aio/operations/_block_blob_operations.py +++ b/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/aio/operations/_block_blob_operations.py @@ -51,6 +51,9 @@ async def upload( tier: Optional[Union[str, "_models.AccessTierOptional"]] = None, request_id_parameter: Optional[str] = None, blob_tags_string: Optional[str] = None, + immutability_policy_expiry: Optional[datetime.datetime] = None, + immutability_policy_mode: Optional[Union[str, "_models.BlobImmutabilityPolicyMode"]] = None, + legal_hold: Optional[bool] = None, blob_http_headers: Optional["_models.BlobHTTPHeaders"] = None, lease_access_conditions: Optional["_models.LeaseAccessConditions"] = None, cpk_info: Optional["_models.CpkInfo"] = None, @@ -94,6 +97,13 @@ async def upload( :type request_id_parameter: str :param blob_tags_string: Optional. Used to set blob tags in various blob operations. :type blob_tags_string: str + :param immutability_policy_expiry: Specifies the date time when the blobs immutability policy + is set to expire. + :type immutability_policy_expiry: ~datetime.datetime + :param immutability_policy_mode: Specifies the immutability policy mode to set on the blob. + :type immutability_policy_mode: str or ~azure.storage.blob.models.BlobImmutabilityPolicyMode + :param legal_hold: Specified if a legal hold should be set on the blob. + :type legal_hold: bool :param blob_http_headers: Parameter group. :type blob_http_headers: ~azure.storage.blob.models.BlobHTTPHeaders :param lease_access_conditions: Parameter group. @@ -213,6 +223,12 @@ async def upload( header_parameters['x-ms-client-request-id'] = self._serialize.header("request_id_parameter", request_id_parameter, 'str') if blob_tags_string is not None: header_parameters['x-ms-tags'] = self._serialize.header("blob_tags_string", blob_tags_string, 'str') + if immutability_policy_expiry is not None: + header_parameters['x-ms-immutability-policy-until-date'] = self._serialize.header("immutability_policy_expiry", immutability_policy_expiry, 'rfc-1123') + if immutability_policy_mode is not None: + header_parameters['x-ms-immutability-policy-mode'] = self._serialize.header("immutability_policy_mode", immutability_policy_mode, 'str') + if legal_hold is not None: + header_parameters['x-ms-legal-hold'] = self._serialize.header("legal_hold", legal_hold, 'bool') header_parameters['Content-Type'] = self._serialize.header("content_type", content_type, 'str') header_parameters['Accept'] = self._serialize.header("accept", accept, 'str') @@ -224,7 +240,7 @@ async def upload( if response.status_code not in [201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -465,7 +481,7 @@ async def put_blob_from_url( if response.status_code not in [201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -605,7 +621,7 @@ async def stage_block( if response.status_code not in [201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -766,7 +782,7 @@ async def stage_block_from_url( if response.status_code not in [201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -796,6 +812,9 @@ async def commit_block_list( tier: Optional[Union[str, "_models.AccessTierOptional"]] = None, request_id_parameter: Optional[str] = None, blob_tags_string: Optional[str] = None, + immutability_policy_expiry: Optional[datetime.datetime] = None, + immutability_policy_mode: Optional[Union[str, "_models.BlobImmutabilityPolicyMode"]] = None, + legal_hold: Optional[bool] = None, blob_http_headers: Optional["_models.BlobHTTPHeaders"] = None, lease_access_conditions: Optional["_models.LeaseAccessConditions"] = None, cpk_info: Optional["_models.CpkInfo"] = None, @@ -842,6 +861,13 @@ async def commit_block_list( :type request_id_parameter: str :param blob_tags_string: Optional. Used to set blob tags in various blob operations. :type blob_tags_string: str + :param immutability_policy_expiry: Specifies the date time when the blobs immutability policy + is set to expire. + :type immutability_policy_expiry: ~datetime.datetime + :param immutability_policy_mode: Specifies the immutability policy mode to set on the blob. + :type immutability_policy_mode: str or ~azure.storage.blob.models.BlobImmutabilityPolicyMode + :param legal_hold: Specified if a legal hold should be set on the blob. + :type legal_hold: bool :param blob_http_headers: Parameter group. :type blob_http_headers: ~azure.storage.blob.models.BlobHTTPHeaders :param lease_access_conditions: Parameter group. @@ -962,6 +988,12 @@ async def commit_block_list( header_parameters['x-ms-client-request-id'] = self._serialize.header("request_id_parameter", request_id_parameter, 'str') if blob_tags_string is not None: header_parameters['x-ms-tags'] = self._serialize.header("blob_tags_string", blob_tags_string, 'str') + if immutability_policy_expiry is not None: + header_parameters['x-ms-immutability-policy-until-date'] = self._serialize.header("immutability_policy_expiry", immutability_policy_expiry, 'rfc-1123') + if immutability_policy_mode is not None: + header_parameters['x-ms-immutability-policy-mode'] = self._serialize.header("immutability_policy_mode", immutability_policy_mode, 'str') + if legal_hold is not None: + header_parameters['x-ms-legal-hold'] = self._serialize.header("legal_hold", legal_hold, 'bool') header_parameters['Content-Type'] = self._serialize.header("content_type", content_type, 'str') header_parameters['Accept'] = self._serialize.header("accept", accept, 'str') @@ -974,7 +1006,7 @@ async def commit_block_list( if response.status_code not in [201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -1082,7 +1114,7 @@ async def get_block_list( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} diff --git a/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/aio/operations/_container_operations.py b/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/aio/operations/_container_operations.py index 904fea36f6a3..bec837429209 100644 --- a/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/aio/operations/_container_operations.py +++ b/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/aio/operations/_container_operations.py @@ -125,7 +125,7 @@ async def create( if response.status_code not in [201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -205,7 +205,7 @@ async def get_properties( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -224,6 +224,7 @@ async def get_properties( response_headers['x-ms-has-legal-hold']=self._deserialize('bool', response.headers.get('x-ms-has-legal-hold')) response_headers['x-ms-default-encryption-scope']=self._deserialize('str', response.headers.get('x-ms-default-encryption-scope')) response_headers['x-ms-deny-encryption-scope-override']=self._deserialize('bool', response.headers.get('x-ms-deny-encryption-scope-override')) + response_headers['x-ms-version-level-worm-enabled']=self._deserialize('bool', response.headers.get('x-ms-version-level-worm-enabled')) if cls: return cls(pipeline_response, None, response_headers) @@ -306,7 +307,7 @@ async def delete( if response.status_code not in [202]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -404,7 +405,7 @@ async def set_metadata( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -486,7 +487,7 @@ async def get_access_policy( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -601,7 +602,7 @@ async def set_access_policy( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -685,7 +686,7 @@ async def restore( if response.status_code not in [201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -765,7 +766,7 @@ async def rename( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -852,7 +853,7 @@ async def submit_batch( if response.status_code not in [202]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -953,7 +954,7 @@ async def acquire_lease( if response.status_code not in [201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -1046,7 +1047,7 @@ async def release_lease( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -1138,7 +1139,7 @@ async def renew_lease( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -1238,7 +1239,7 @@ async def break_lease( if response.status_code not in [202]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -1337,7 +1338,7 @@ async def change_lease( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -1442,7 +1443,7 @@ async def list_blob_flat_segment( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -1554,7 +1555,7 @@ async def list_blob_hierarchy_segment( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -1614,7 +1615,7 @@ async def get_account_info( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} diff --git a/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/aio/operations/_directory_operations.py b/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/aio/operations/_directory_operations.py index 338ff69e3adc..bd18d797d8bd 100644 --- a/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/aio/operations/_directory_operations.py +++ b/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/aio/operations/_directory_operations.py @@ -177,7 +177,7 @@ async def create( if response.status_code not in [201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.DataLakeStorageError, response) + error = self._deserialize.failsafe_deserialize(_models.DataLakeStorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -375,7 +375,7 @@ async def rename( if response.status_code not in [201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.DataLakeStorageError, response) + error = self._deserialize.failsafe_deserialize(_models.DataLakeStorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -488,7 +488,7 @@ async def delete( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.DataLakeStorageError, response) + error = self._deserialize.failsafe_deserialize(_models.DataLakeStorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -612,7 +612,7 @@ async def set_access_control( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.DataLakeStorageError, response) + error = self._deserialize.failsafe_deserialize(_models.DataLakeStorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -719,7 +719,7 @@ async def get_access_control( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.DataLakeStorageError, response) + error = self._deserialize.failsafe_deserialize(_models.DataLakeStorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} diff --git a/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/aio/operations/_page_blob_operations.py b/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/aio/operations/_page_blob_operations.py index 100f730254ed..8a6e272594c0 100644 --- a/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/aio/operations/_page_blob_operations.py +++ b/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/aio/operations/_page_blob_operations.py @@ -51,6 +51,9 @@ async def create( blob_sequence_number: Optional[int] = 0, request_id_parameter: Optional[str] = None, blob_tags_string: Optional[str] = None, + immutability_policy_expiry: Optional[datetime.datetime] = None, + immutability_policy_mode: Optional[Union[str, "_models.BlobImmutabilityPolicyMode"]] = None, + legal_hold: Optional[bool] = None, blob_http_headers: Optional["_models.BlobHTTPHeaders"] = None, lease_access_conditions: Optional["_models.LeaseAccessConditions"] = None, cpk_info: Optional["_models.CpkInfo"] = None, @@ -92,6 +95,13 @@ async def create( :type request_id_parameter: str :param blob_tags_string: Optional. Used to set blob tags in various blob operations. :type blob_tags_string: str + :param immutability_policy_expiry: Specifies the date time when the blobs immutability policy + is set to expire. + :type immutability_policy_expiry: ~datetime.datetime + :param immutability_policy_mode: Specifies the immutability policy mode to set on the blob. + :type immutability_policy_mode: str or ~azure.storage.blob.models.BlobImmutabilityPolicyMode + :param legal_hold: Specified if a legal hold should be set on the blob. + :type legal_hold: bool :param blob_http_headers: Parameter group. :type blob_http_headers: ~azure.storage.blob.models.BlobHTTPHeaders :param lease_access_conditions: Parameter group. @@ -211,6 +221,12 @@ async def create( header_parameters['x-ms-client-request-id'] = self._serialize.header("request_id_parameter", request_id_parameter, 'str') if blob_tags_string is not None: header_parameters['x-ms-tags'] = self._serialize.header("blob_tags_string", blob_tags_string, 'str') + if immutability_policy_expiry is not None: + header_parameters['x-ms-immutability-policy-until-date'] = self._serialize.header("immutability_policy_expiry", immutability_policy_expiry, 'rfc-1123') + if immutability_policy_mode is not None: + header_parameters['x-ms-immutability-policy-mode'] = self._serialize.header("immutability_policy_mode", immutability_policy_mode, 'str') + if legal_hold is not None: + header_parameters['x-ms-legal-hold'] = self._serialize.header("legal_hold", legal_hold, 'bool') header_parameters['Accept'] = self._serialize.header("accept", accept, 'str') request = self._client.put(url, query_parameters, header_parameters) @@ -219,7 +235,7 @@ async def create( if response.status_code not in [201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -400,7 +416,7 @@ async def upload_pages( if response.status_code not in [201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -563,7 +579,7 @@ async def clear_pages( if response.status_code not in [201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -765,7 +781,7 @@ async def upload_pages_from_url( if response.status_code not in [201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -888,7 +904,7 @@ async def get_page_ranges( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -1027,7 +1043,7 @@ async def get_page_ranges_diff( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -1165,7 +1181,7 @@ async def resize( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -1282,7 +1298,7 @@ async def update_sequence_number( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -1389,7 +1405,7 @@ async def copy_incremental( if response.status_code not in [202]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} diff --git a/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/aio/operations/_service_operations.py b/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/aio/operations/_service_operations.py index 91a064680562..f293d00b5b8b 100644 --- a/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/aio/operations/_service_operations.py +++ b/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/aio/operations/_service_operations.py @@ -104,7 +104,7 @@ async def set_properties( if response.status_code not in [202]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -174,7 +174,7 @@ async def get_properties( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -247,7 +247,7 @@ async def get_statistics( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -350,7 +350,7 @@ async def list_containers_segment( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -430,7 +430,7 @@ async def get_user_delegation_key( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -489,7 +489,7 @@ async def get_account_info( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -577,7 +577,7 @@ async def submit_batch( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -674,7 +674,7 @@ async def filter_blobs( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} diff --git a/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/models/__init__.py b/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/models/__init__.py index 831bfa90ca91..a3a275e8ae25 100644 --- a/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/models/__init__.py +++ b/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/models/__init__.py @@ -31,7 +31,7 @@ from ._models_py3 import CpkInfo from ._models_py3 import CpkScopeInfo from ._models_py3 import DataLakeStorageError - from ._models_py3 import DataLakeStorageErrorAutoGenerated + from ._models_py3 import DataLakeStorageErrorError from ._models_py3 import DelimitedTextConfiguration from ._models_py3 import DirectoryHttpHeaders from ._models_py3 import FilterBlobItem @@ -85,7 +85,7 @@ from ._models import CpkInfo # type: ignore from ._models import CpkScopeInfo # type: ignore from ._models import DataLakeStorageError # type: ignore - from ._models import DataLakeStorageErrorAutoGenerated # type: ignore + from ._models import DataLakeStorageErrorError # type: ignore from ._models import DelimitedTextConfiguration # type: ignore from ._models import DirectoryHttpHeaders # type: ignore from ._models import FilterBlobItem # type: ignore @@ -122,6 +122,7 @@ AccountKind, ArchiveStatus, BlobExpiryOptions, + BlobImmutabilityPolicyMode, BlobType, BlockListType, CopyStatusType, @@ -167,7 +168,7 @@ 'CpkInfo', 'CpkScopeInfo', 'DataLakeStorageError', - 'DataLakeStorageErrorAutoGenerated', + 'DataLakeStorageErrorError', 'DelimitedTextConfiguration', 'DirectoryHttpHeaders', 'FilterBlobItem', @@ -202,6 +203,7 @@ 'AccountKind', 'ArchiveStatus', 'BlobExpiryOptions', + 'BlobImmutabilityPolicyMode', 'BlobType', 'BlockListType', 'CopyStatusType', diff --git a/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/models/_azure_blob_storage_enums.py b/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/models/_azure_blob_storage_enums.py index 2df7b1ad6219..d41f32296e87 100644 --- a/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/models/_azure_blob_storage_enums.py +++ b/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/models/_azure_blob_storage_enums.py @@ -97,6 +97,12 @@ class BlobExpiryOptions(with_metaclass(_CaseInsensitiveEnumMeta, str, Enum)): RELATIVE_TO_NOW = "RelativeToNow" ABSOLUTE = "Absolute" +class BlobImmutabilityPolicyMode(with_metaclass(_CaseInsensitiveEnumMeta, str, Enum)): + + UNLOCKED = "Unlocked" + LOCKED = "Locked" + MUTABLE = "Mutable" + class BlobType(with_metaclass(_CaseInsensitiveEnumMeta, str, Enum)): BLOCK_BLOB = "BlockBlob" @@ -156,6 +162,8 @@ class ListBlobsIncludeItem(with_metaclass(_CaseInsensitiveEnumMeta, str, Enum)): UNCOMMITTEDBLOBS = "uncommittedblobs" VERSIONS = "versions" TAGS = "tags" + IMMUTABILITYPOLICY = "immutabilitypolicy" + LEGALHOLD = "legalhold" class ListContainersIncludeType(with_metaclass(_CaseInsensitiveEnumMeta, str, Enum)): @@ -193,6 +201,7 @@ class QueryFormatType(with_metaclass(_CaseInsensitiveEnumMeta, str, Enum)): DELIMITED = "delimited" JSON = "json" ARROW = "arrow" + PARQUET = "parquet" class RehydratePriority(with_metaclass(_CaseInsensitiveEnumMeta, str, Enum)): """If an object is in rehydrate pending state then this header is returned with priority of diff --git a/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/models/_models.py b/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/models/_models.py index dd31ba1fbc92..de8a5f0a30de 100644 --- a/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/models/_models.py +++ b/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/models/_models.py @@ -437,6 +437,12 @@ class BlobPropertiesInternal(msrest.serialization.Model): :type rehydrate_priority: str or ~azure.storage.blob.models.RehydratePriority :param last_accessed_on: :type last_accessed_on: ~datetime.datetime + :param immutability_policy_expires_on: + :type immutability_policy_expires_on: ~datetime.datetime + :param immutability_policy_mode: Possible values include: "Unlocked", "Locked", "Mutable". + :type immutability_policy_mode: str or ~azure.storage.blob.models.BlobImmutabilityPolicyMode + :param legal_hold: + :type legal_hold: bool """ _validation = { @@ -482,6 +488,9 @@ class BlobPropertiesInternal(msrest.serialization.Model): 'is_sealed': {'key': 'Sealed', 'type': 'bool'}, 'rehydrate_priority': {'key': 'RehydratePriority', 'type': 'str'}, 'last_accessed_on': {'key': 'LastAccessTime', 'type': 'rfc-1123'}, + 'immutability_policy_expires_on': {'key': 'ImmutabilityPolicyUntilDate', 'type': 'rfc-1123'}, + 'immutability_policy_mode': {'key': 'ImmutabilityPolicyMode', 'type': 'str'}, + 'legal_hold': {'key': 'LegalHold', 'type': 'bool'}, } _xml_map = { 'name': 'Properties' @@ -529,6 +538,9 @@ def __init__( self.is_sealed = kwargs.get('is_sealed', None) self.rehydrate_priority = kwargs.get('rehydrate_priority', None) self.last_accessed_on = kwargs.get('last_accessed_on', None) + self.immutability_policy_expires_on = kwargs.get('immutability_policy_expires_on', None) + self.immutability_policy_mode = kwargs.get('immutability_policy_mode', None) + self.legal_hold = kwargs.get('legal_hold', None) class BlobTag(msrest.serialization.Model): @@ -600,7 +612,7 @@ class Block(msrest.serialization.Model): :param name: Required. The base64 encoded block ID. :type name: str :param size: Required. The block size in bytes. - :type size: int + :type size: long """ _validation = { @@ -610,7 +622,7 @@ class Block(msrest.serialization.Model): _attribute_map = { 'name': {'key': 'Name', 'type': 'str'}, - 'size': {'key': 'Size', 'type': 'int'}, + 'size': {'key': 'Size', 'type': 'long'}, } def __init__( @@ -809,6 +821,9 @@ class ContainerProperties(msrest.serialization.Model): :type deleted_time: ~datetime.datetime :param remaining_retention_days: :type remaining_retention_days: int + :param is_version_level_worm_enabled: Indicates if version level worm is enabled on this + container. + :type is_version_level_worm_enabled: bool """ _validation = { @@ -829,6 +844,7 @@ class ContainerProperties(msrest.serialization.Model): 'prevent_encryption_scope_override': {'key': 'DenyEncryptionScopeOverride', 'type': 'bool'}, 'deleted_time': {'key': 'DeletedTime', 'type': 'rfc-1123'}, 'remaining_retention_days': {'key': 'RemainingRetentionDays', 'type': 'int'}, + 'is_version_level_worm_enabled': {'key': 'VersionLevelWormEnabled', 'type': 'bool'}, } def __init__( @@ -848,6 +864,7 @@ def __init__( self.prevent_encryption_scope_override = kwargs.get('prevent_encryption_scope_override', None) self.deleted_time = kwargs.get('deleted_time', None) self.remaining_retention_days = kwargs.get('remaining_retention_days', None) + self.is_version_level_worm_enabled = kwargs.get('is_version_level_worm_enabled', None) class CorsRule(msrest.serialization.Model): @@ -955,12 +972,11 @@ class DataLakeStorageError(msrest.serialization.Model): """DataLakeStorageError. :param data_lake_storage_error_details: The service error response object. - :type data_lake_storage_error_details: - ~azure.storage.blob.models.DataLakeStorageErrorAutoGenerated + :type data_lake_storage_error_details: ~azure.storage.blob.models.DataLakeStorageErrorError """ _attribute_map = { - 'data_lake_storage_error_details': {'key': 'error', 'type': 'DataLakeStorageErrorAutoGenerated'}, + 'data_lake_storage_error_details': {'key': 'error', 'type': 'DataLakeStorageErrorError'}, } def __init__( @@ -971,7 +987,7 @@ def __init__( self.data_lake_storage_error_details = kwargs.get('data_lake_storage_error_details', None) -class DataLakeStorageErrorAutoGenerated(msrest.serialization.Model): +class DataLakeStorageErrorError(msrest.serialization.Model): """The service error response object. :param code: The service error code. @@ -989,7 +1005,7 @@ def __init__( self, **kwargs ): - super(DataLakeStorageErrorAutoGenerated, self).__init__(**kwargs) + super(DataLakeStorageErrorError, self).__init__(**kwargs) self.code = kwargs.get('code', None) self.message = kwargs.get('message', None) @@ -1611,7 +1627,7 @@ class QueryFormat(msrest.serialization.Model): """QueryFormat. :param type: The quick query format type. Possible values include: "delimited", "json", - "arrow". + "arrow", "parquet". :type type: str or ~azure.storage.blob.models.QueryFormatType :param delimited_text_configuration: delimited text configuration. :type delimited_text_configuration: ~azure.storage.blob.models.DelimitedTextConfiguration @@ -1619,6 +1635,8 @@ class QueryFormat(msrest.serialization.Model): :type json_text_configuration: ~azure.storage.blob.models.JsonTextConfiguration :param arrow_configuration: arrow configuration. :type arrow_configuration: ~azure.storage.blob.models.ArrowConfiguration + :param parquet_text_configuration: Any object. + :type parquet_text_configuration: object """ _attribute_map = { @@ -1626,6 +1644,7 @@ class QueryFormat(msrest.serialization.Model): 'delimited_text_configuration': {'key': 'DelimitedTextConfiguration', 'type': 'DelimitedTextConfiguration'}, 'json_text_configuration': {'key': 'JsonTextConfiguration', 'type': 'JsonTextConfiguration'}, 'arrow_configuration': {'key': 'ArrowConfiguration', 'type': 'ArrowConfiguration'}, + 'parquet_text_configuration': {'key': 'ParquetTextConfiguration', 'type': 'object'}, } def __init__( @@ -1637,6 +1656,7 @@ def __init__( self.delimited_text_configuration = kwargs.get('delimited_text_configuration', None) self.json_text_configuration = kwargs.get('json_text_configuration', None) self.arrow_configuration = kwargs.get('arrow_configuration', None) + self.parquet_text_configuration = kwargs.get('parquet_text_configuration', None) class QueryRequest(msrest.serialization.Model): diff --git a/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/models/_models_py3.py b/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/models/_models_py3.py index 9bac63fee7d6..f7d5ccde44e2 100644 --- a/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/models/_models_py3.py +++ b/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/models/_models_py3.py @@ -483,6 +483,12 @@ class BlobPropertiesInternal(msrest.serialization.Model): :type rehydrate_priority: str or ~azure.storage.blob.models.RehydratePriority :param last_accessed_on: :type last_accessed_on: ~datetime.datetime + :param immutability_policy_expires_on: + :type immutability_policy_expires_on: ~datetime.datetime + :param immutability_policy_mode: Possible values include: "Unlocked", "Locked", "Mutable". + :type immutability_policy_mode: str or ~azure.storage.blob.models.BlobImmutabilityPolicyMode + :param legal_hold: + :type legal_hold: bool """ _validation = { @@ -528,6 +534,9 @@ class BlobPropertiesInternal(msrest.serialization.Model): 'is_sealed': {'key': 'Sealed', 'type': 'bool'}, 'rehydrate_priority': {'key': 'RehydratePriority', 'type': 'str'}, 'last_accessed_on': {'key': 'LastAccessTime', 'type': 'rfc-1123'}, + 'immutability_policy_expires_on': {'key': 'ImmutabilityPolicyUntilDate', 'type': 'rfc-1123'}, + 'immutability_policy_mode': {'key': 'ImmutabilityPolicyMode', 'type': 'str'}, + 'legal_hold': {'key': 'LegalHold', 'type': 'bool'}, } _xml_map = { 'name': 'Properties' @@ -573,6 +582,9 @@ def __init__( is_sealed: Optional[bool] = None, rehydrate_priority: Optional[Union[str, "RehydratePriority"]] = None, last_accessed_on: Optional[datetime.datetime] = None, + immutability_policy_expires_on: Optional[datetime.datetime] = None, + immutability_policy_mode: Optional[Union[str, "BlobImmutabilityPolicyMode"]] = None, + legal_hold: Optional[bool] = None, **kwargs ): super(BlobPropertiesInternal, self).__init__(**kwargs) @@ -613,6 +625,9 @@ def __init__( self.is_sealed = is_sealed self.rehydrate_priority = rehydrate_priority self.last_accessed_on = last_accessed_on + self.immutability_policy_expires_on = immutability_policy_expires_on + self.immutability_policy_mode = immutability_policy_mode + self.legal_hold = legal_hold class BlobTag(msrest.serialization.Model): @@ -689,7 +704,7 @@ class Block(msrest.serialization.Model): :param name: Required. The base64 encoded block ID. :type name: str :param size: Required. The block size in bytes. - :type size: int + :type size: long """ _validation = { @@ -699,7 +714,7 @@ class Block(msrest.serialization.Model): _attribute_map = { 'name': {'key': 'Name', 'type': 'str'}, - 'size': {'key': 'Size', 'type': 'int'}, + 'size': {'key': 'Size', 'type': 'long'}, } def __init__( @@ -920,6 +935,9 @@ class ContainerProperties(msrest.serialization.Model): :type deleted_time: ~datetime.datetime :param remaining_retention_days: :type remaining_retention_days: int + :param is_version_level_worm_enabled: Indicates if version level worm is enabled on this + container. + :type is_version_level_worm_enabled: bool """ _validation = { @@ -940,6 +958,7 @@ class ContainerProperties(msrest.serialization.Model): 'prevent_encryption_scope_override': {'key': 'DenyEncryptionScopeOverride', 'type': 'bool'}, 'deleted_time': {'key': 'DeletedTime', 'type': 'rfc-1123'}, 'remaining_retention_days': {'key': 'RemainingRetentionDays', 'type': 'int'}, + 'is_version_level_worm_enabled': {'key': 'VersionLevelWormEnabled', 'type': 'bool'}, } def __init__( @@ -957,6 +976,7 @@ def __init__( prevent_encryption_scope_override: Optional[bool] = None, deleted_time: Optional[datetime.datetime] = None, remaining_retention_days: Optional[int] = None, + is_version_level_worm_enabled: Optional[bool] = None, **kwargs ): super(ContainerProperties, self).__init__(**kwargs) @@ -972,6 +992,7 @@ def __init__( self.prevent_encryption_scope_override = prevent_encryption_scope_override self.deleted_time = deleted_time self.remaining_retention_days = remaining_retention_days + self.is_version_level_worm_enabled = is_version_level_worm_enabled class CorsRule(msrest.serialization.Model): @@ -1090,25 +1111,24 @@ class DataLakeStorageError(msrest.serialization.Model): """DataLakeStorageError. :param data_lake_storage_error_details: The service error response object. - :type data_lake_storage_error_details: - ~azure.storage.blob.models.DataLakeStorageErrorAutoGenerated + :type data_lake_storage_error_details: ~azure.storage.blob.models.DataLakeStorageErrorError """ _attribute_map = { - 'data_lake_storage_error_details': {'key': 'error', 'type': 'DataLakeStorageErrorAutoGenerated'}, + 'data_lake_storage_error_details': {'key': 'error', 'type': 'DataLakeStorageErrorError'}, } def __init__( self, *, - data_lake_storage_error_details: Optional["DataLakeStorageErrorAutoGenerated"] = None, + data_lake_storage_error_details: Optional["DataLakeStorageErrorError"] = None, **kwargs ): super(DataLakeStorageError, self).__init__(**kwargs) self.data_lake_storage_error_details = data_lake_storage_error_details -class DataLakeStorageErrorAutoGenerated(msrest.serialization.Model): +class DataLakeStorageErrorError(msrest.serialization.Model): """The service error response object. :param code: The service error code. @@ -1129,7 +1149,7 @@ def __init__( message: Optional[str] = None, **kwargs ): - super(DataLakeStorageErrorAutoGenerated, self).__init__(**kwargs) + super(DataLakeStorageErrorError, self).__init__(**kwargs) self.code = code self.message = message @@ -1829,7 +1849,7 @@ class QueryFormat(msrest.serialization.Model): """QueryFormat. :param type: The quick query format type. Possible values include: "delimited", "json", - "arrow". + "arrow", "parquet". :type type: str or ~azure.storage.blob.models.QueryFormatType :param delimited_text_configuration: delimited text configuration. :type delimited_text_configuration: ~azure.storage.blob.models.DelimitedTextConfiguration @@ -1837,6 +1857,8 @@ class QueryFormat(msrest.serialization.Model): :type json_text_configuration: ~azure.storage.blob.models.JsonTextConfiguration :param arrow_configuration: arrow configuration. :type arrow_configuration: ~azure.storage.blob.models.ArrowConfiguration + :param parquet_text_configuration: Any object. + :type parquet_text_configuration: object """ _attribute_map = { @@ -1844,6 +1866,7 @@ class QueryFormat(msrest.serialization.Model): 'delimited_text_configuration': {'key': 'DelimitedTextConfiguration', 'type': 'DelimitedTextConfiguration'}, 'json_text_configuration': {'key': 'JsonTextConfiguration', 'type': 'JsonTextConfiguration'}, 'arrow_configuration': {'key': 'ArrowConfiguration', 'type': 'ArrowConfiguration'}, + 'parquet_text_configuration': {'key': 'ParquetTextConfiguration', 'type': 'object'}, } def __init__( @@ -1853,6 +1876,7 @@ def __init__( delimited_text_configuration: Optional["DelimitedTextConfiguration"] = None, json_text_configuration: Optional["JsonTextConfiguration"] = None, arrow_configuration: Optional["ArrowConfiguration"] = None, + parquet_text_configuration: Optional[object] = None, **kwargs ): super(QueryFormat, self).__init__(**kwargs) @@ -1860,6 +1884,7 @@ def __init__( self.delimited_text_configuration = delimited_text_configuration self.json_text_configuration = json_text_configuration self.arrow_configuration = arrow_configuration + self.parquet_text_configuration = parquet_text_configuration class QueryRequest(msrest.serialization.Model): diff --git a/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/operations/_append_blob_operations.py b/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/operations/_append_blob_operations.py index abbe40eac438..655b29cfeca4 100644 --- a/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/operations/_append_blob_operations.py +++ b/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/operations/_append_blob_operations.py @@ -17,7 +17,7 @@ if TYPE_CHECKING: # pylint: disable=unused-import,ungrouped-imports - from typing import Any, Callable, Dict, Generic, IO, Optional, TypeVar + from typing import Any, Callable, Dict, Generic, IO, Optional, TypeVar, Union T = TypeVar('T') ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] @@ -52,6 +52,9 @@ def create( encryption_algorithm="AES256", # type: Optional[str] request_id_parameter=None, # type: Optional[str] blob_tags_string=None, # type: Optional[str] + immutability_policy_expiry=None, # type: Optional[datetime.datetime] + immutability_policy_mode=None, # type: Optional[Union[str, "_models.BlobImmutabilityPolicyMode"]] + legal_hold=None, # type: Optional[bool] blob_http_headers=None, # type: Optional["_models.BlobHTTPHeaders"] lease_access_conditions=None, # type: Optional["_models.LeaseAccessConditions"] cpk_info=None, # type: Optional["_models.CpkInfo"] @@ -85,6 +88,13 @@ def create( :type request_id_parameter: str :param blob_tags_string: Optional. Used to set blob tags in various blob operations. :type blob_tags_string: str + :param immutability_policy_expiry: Specifies the date time when the blobs immutability policy + is set to expire. + :type immutability_policy_expiry: ~datetime.datetime + :param immutability_policy_mode: Specifies the immutability policy mode to set on the blob. + :type immutability_policy_mode: str or ~azure.storage.blob.models.BlobImmutabilityPolicyMode + :param legal_hold: Specified if a legal hold should be set on the blob. + :type legal_hold: bool :param blob_http_headers: Parameter group. :type blob_http_headers: ~azure.storage.blob.models.BlobHTTPHeaders :param lease_access_conditions: Parameter group. @@ -199,6 +209,12 @@ def create( header_parameters['x-ms-client-request-id'] = self._serialize.header("request_id_parameter", request_id_parameter, 'str') if blob_tags_string is not None: header_parameters['x-ms-tags'] = self._serialize.header("blob_tags_string", blob_tags_string, 'str') + if immutability_policy_expiry is not None: + header_parameters['x-ms-immutability-policy-until-date'] = self._serialize.header("immutability_policy_expiry", immutability_policy_expiry, 'rfc-1123') + if immutability_policy_mode is not None: + header_parameters['x-ms-immutability-policy-mode'] = self._serialize.header("immutability_policy_mode", immutability_policy_mode, 'str') + if legal_hold is not None: + header_parameters['x-ms-legal-hold'] = self._serialize.header("legal_hold", legal_hold, 'bool') header_parameters['Accept'] = self._serialize.header("accept", accept, 'str') request = self._client.put(url, query_parameters, header_parameters) @@ -207,7 +223,7 @@ def create( if response.status_code not in [201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -380,7 +396,7 @@ def append_block( if response.status_code not in [201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -584,7 +600,7 @@ def append_block_from_url( if response.status_code not in [201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -699,7 +715,7 @@ def seal( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} diff --git a/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/operations/_blob_operations.py b/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/operations/_blob_operations.py index bfa782f98d6b..639911bfb307 100644 --- a/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/operations/_blob_operations.py +++ b/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/operations/_blob_operations.py @@ -184,7 +184,7 @@ def download( if response.status_code not in [200, 206]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -228,6 +228,9 @@ def download( response_headers['x-ms-tag-count']=self._deserialize('long', response.headers.get('x-ms-tag-count')) response_headers['x-ms-blob-sealed']=self._deserialize('bool', response.headers.get('x-ms-blob-sealed')) response_headers['x-ms-last-access-time']=self._deserialize('rfc-1123', response.headers.get('x-ms-last-access-time')) + response_headers['x-ms-immutability-policy-until-date']=self._deserialize('rfc-1123', response.headers.get('x-ms-immutability-policy-until-date')) + response_headers['x-ms-immutability-policy-mode']=self._deserialize('str', response.headers.get('x-ms-immutability-policy-mode')) + response_headers['x-ms-legal-hold']=self._deserialize('bool', response.headers.get('x-ms-legal-hold')) deserialized = response.stream_download(self._client._pipeline) if response.status_code == 206: @@ -271,6 +274,9 @@ def download( response_headers['x-ms-tag-count']=self._deserialize('long', response.headers.get('x-ms-tag-count')) response_headers['x-ms-blob-sealed']=self._deserialize('bool', response.headers.get('x-ms-blob-sealed')) response_headers['x-ms-last-access-time']=self._deserialize('rfc-1123', response.headers.get('x-ms-last-access-time')) + response_headers['x-ms-immutability-policy-until-date']=self._deserialize('rfc-1123', response.headers.get('x-ms-immutability-policy-until-date')) + response_headers['x-ms-immutability-policy-mode']=self._deserialize('str', response.headers.get('x-ms-immutability-policy-mode')) + response_headers['x-ms-legal-hold']=self._deserialize('bool', response.headers.get('x-ms-legal-hold')) deserialized = response.stream_download(self._client._pipeline) if cls: @@ -400,7 +406,7 @@ def get_properties( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -450,6 +456,9 @@ def get_properties( response_headers['x-ms-blob-sealed']=self._deserialize('bool', response.headers.get('x-ms-blob-sealed')) response_headers['x-ms-rehydrate-priority']=self._deserialize('str', response.headers.get('x-ms-rehydrate-priority')) response_headers['x-ms-last-access-time']=self._deserialize('rfc-1123', response.headers.get('x-ms-last-access-time')) + response_headers['x-ms-immutability-policy-until-date']=self._deserialize('rfc-1123', response.headers.get('x-ms-immutability-policy-until-date')) + response_headers['x-ms-immutability-policy-mode']=self._deserialize('str', response.headers.get('x-ms-immutability-policy-mode')) + response_headers['x-ms-legal-hold']=self._deserialize('bool', response.headers.get('x-ms-legal-hold')) if cls: return cls(pipeline_response, None, response_headers) @@ -581,7 +590,7 @@ def delete( if response.status_code not in [202]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -705,7 +714,7 @@ def set_access_control( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.DataLakeStorageError, response) + error = self._deserialize.failsafe_deserialize(_models.DataLakeStorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -813,7 +822,7 @@ def get_access_control( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.DataLakeStorageError, response) + error = self._deserialize.failsafe_deserialize(_models.DataLakeStorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -1005,7 +1014,7 @@ def rename( if response.status_code not in [201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.DataLakeStorageError, response) + error = self._deserialize.failsafe_deserialize(_models.DataLakeStorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -1077,7 +1086,7 @@ def undelete( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -1155,7 +1164,7 @@ def set_expiry( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -1287,7 +1296,7 @@ def set_http_headers( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -1304,6 +1313,240 @@ def set_http_headers( set_http_headers.metadata = {'url': '/{containerName}/{blob}'} # type: ignore + def set_immutability_policy( + self, + timeout=None, # type: Optional[int] + request_id_parameter=None, # type: Optional[str] + immutability_policy_expiry=None, # type: Optional[datetime.datetime] + immutability_policy_mode=None, # type: Optional[Union[str, "_models.BlobImmutabilityPolicyMode"]] + modified_access_conditions=None, # type: Optional["_models.ModifiedAccessConditions"] + **kwargs # type: Any + ): + # type: (...) -> None + """The Set Immutability Policy operation sets the immutability policy on the blob. + + :param timeout: The timeout parameter is expressed in seconds. For more information, see + :code:`Setting Timeouts for Blob Service Operations.`. + :type timeout: int + :param request_id_parameter: Provides a client-generated, opaque value with a 1 KB character + limit that is recorded in the analytics logs when storage analytics logging is enabled. + :type request_id_parameter: str + :param immutability_policy_expiry: Specifies the date time when the blobs immutability policy + is set to expire. + :type immutability_policy_expiry: ~datetime.datetime + :param immutability_policy_mode: Specifies the immutability policy mode to set on the blob. + :type immutability_policy_mode: str or ~azure.storage.blob.models.BlobImmutabilityPolicyMode + :param modified_access_conditions: Parameter group. + :type modified_access_conditions: ~azure.storage.blob.models.ModifiedAccessConditions + :keyword callable cls: A custom type or function that will be passed the direct response + :return: None, or the result of cls(response) + :rtype: None + :raises: ~azure.core.exceptions.HttpResponseError + """ + cls = kwargs.pop('cls', None) # type: ClsType[None] + error_map = { + 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError + } + error_map.update(kwargs.pop('error_map', {})) + + _if_unmodified_since = None + if modified_access_conditions is not None: + _if_unmodified_since = modified_access_conditions.if_unmodified_since + comp = "immutabilityPolicies" + accept = "application/xml" + + # Construct URL + url = self.set_immutability_policy.metadata['url'] # type: ignore + path_format_arguments = { + 'url': self._serialize.url("self._config.url", self._config.url, 'str', skip_quote=True), + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} # type: Dict[str, Any] + query_parameters['comp'] = self._serialize.query("comp", comp, 'str') + if timeout is not None: + query_parameters['timeout'] = self._serialize.query("timeout", timeout, 'int', minimum=0) + + # Construct headers + header_parameters = {} # type: Dict[str, Any] + header_parameters['x-ms-version'] = self._serialize.header("self._config.version", self._config.version, 'str') + if request_id_parameter is not None: + header_parameters['x-ms-client-request-id'] = self._serialize.header("request_id_parameter", request_id_parameter, 'str') + if _if_unmodified_since is not None: + header_parameters['If-Unmodified-Since'] = self._serialize.header("if_unmodified_since", _if_unmodified_since, 'rfc-1123') + if immutability_policy_expiry is not None: + header_parameters['x-ms-immutability-policy-until-date'] = self._serialize.header("immutability_policy_expiry", immutability_policy_expiry, 'rfc-1123') + if immutability_policy_mode is not None: + header_parameters['x-ms-immutability-policy-mode'] = self._serialize.header("immutability_policy_mode", immutability_policy_mode, 'str') + header_parameters['Accept'] = self._serialize.header("accept", accept, 'str') + + request = self._client.put(url, query_parameters, header_parameters) + pipeline_response = self._client._pipeline.run(request, stream=False, **kwargs) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) + raise HttpResponseError(response=response, model=error) + + response_headers = {} + response_headers['x-ms-client-request-id']=self._deserialize('str', response.headers.get('x-ms-client-request-id')) + response_headers['x-ms-request-id']=self._deserialize('str', response.headers.get('x-ms-request-id')) + response_headers['x-ms-version']=self._deserialize('str', response.headers.get('x-ms-version')) + response_headers['Date']=self._deserialize('rfc-1123', response.headers.get('Date')) + response_headers['x-ms-immutability-policy-until-date']=self._deserialize('rfc-1123', response.headers.get('x-ms-immutability-policy-until-date')) + response_headers['x-ms-immutability-policy-mode']=self._deserialize('str', response.headers.get('x-ms-immutability-policy-mode')) + + if cls: + return cls(pipeline_response, None, response_headers) + + set_immutability_policy.metadata = {'url': '/{containerName}/{blob}'} # type: ignore + + def delete_immutability_policy( + self, + timeout=None, # type: Optional[int] + request_id_parameter=None, # type: Optional[str] + **kwargs # type: Any + ): + # type: (...) -> None + """The Delete Immutability Policy operation deletes the immutability policy on the blob. + + :param timeout: The timeout parameter is expressed in seconds. For more information, see + :code:`Setting Timeouts for Blob Service Operations.`. + :type timeout: int + :param request_id_parameter: Provides a client-generated, opaque value with a 1 KB character + limit that is recorded in the analytics logs when storage analytics logging is enabled. + :type request_id_parameter: str + :keyword callable cls: A custom type or function that will be passed the direct response + :return: None, or the result of cls(response) + :rtype: None + :raises: ~azure.core.exceptions.HttpResponseError + """ + cls = kwargs.pop('cls', None) # type: ClsType[None] + error_map = { + 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError + } + error_map.update(kwargs.pop('error_map', {})) + comp = "immutabilityPolicies" + accept = "application/xml" + + # Construct URL + url = self.delete_immutability_policy.metadata['url'] # type: ignore + path_format_arguments = { + 'url': self._serialize.url("self._config.url", self._config.url, 'str', skip_quote=True), + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} # type: Dict[str, Any] + query_parameters['comp'] = self._serialize.query("comp", comp, 'str') + if timeout is not None: + query_parameters['timeout'] = self._serialize.query("timeout", timeout, 'int', minimum=0) + + # Construct headers + header_parameters = {} # type: Dict[str, Any] + header_parameters['x-ms-version'] = self._serialize.header("self._config.version", self._config.version, 'str') + if request_id_parameter is not None: + header_parameters['x-ms-client-request-id'] = self._serialize.header("request_id_parameter", request_id_parameter, 'str') + header_parameters['Accept'] = self._serialize.header("accept", accept, 'str') + + request = self._client.delete(url, query_parameters, header_parameters) + pipeline_response = self._client._pipeline.run(request, stream=False, **kwargs) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) + raise HttpResponseError(response=response, model=error) + + response_headers = {} + response_headers['x-ms-client-request-id']=self._deserialize('str', response.headers.get('x-ms-client-request-id')) + response_headers['x-ms-request-id']=self._deserialize('str', response.headers.get('x-ms-request-id')) + response_headers['x-ms-version']=self._deserialize('str', response.headers.get('x-ms-version')) + response_headers['Date']=self._deserialize('rfc-1123', response.headers.get('Date')) + + if cls: + return cls(pipeline_response, None, response_headers) + + delete_immutability_policy.metadata = {'url': '/{containerName}/{blob}'} # type: ignore + + def set_legal_hold( + self, + legal_hold, # type: bool + timeout=None, # type: Optional[int] + request_id_parameter=None, # type: Optional[str] + **kwargs # type: Any + ): + # type: (...) -> None + """The Set Legal Hold operation sets a legal hold on the blob. + + :param legal_hold: Specified if a legal hold should be set on the blob. + :type legal_hold: bool + :param timeout: The timeout parameter is expressed in seconds. For more information, see + :code:`Setting Timeouts for Blob Service Operations.`. + :type timeout: int + :param request_id_parameter: Provides a client-generated, opaque value with a 1 KB character + limit that is recorded in the analytics logs when storage analytics logging is enabled. + :type request_id_parameter: str + :keyword callable cls: A custom type or function that will be passed the direct response + :return: None, or the result of cls(response) + :rtype: None + :raises: ~azure.core.exceptions.HttpResponseError + """ + cls = kwargs.pop('cls', None) # type: ClsType[None] + error_map = { + 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError + } + error_map.update(kwargs.pop('error_map', {})) + comp = "legalhold" + accept = "application/xml" + + # Construct URL + url = self.set_legal_hold.metadata['url'] # type: ignore + path_format_arguments = { + 'url': self._serialize.url("self._config.url", self._config.url, 'str', skip_quote=True), + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} # type: Dict[str, Any] + query_parameters['comp'] = self._serialize.query("comp", comp, 'str') + if timeout is not None: + query_parameters['timeout'] = self._serialize.query("timeout", timeout, 'int', minimum=0) + + # Construct headers + header_parameters = {} # type: Dict[str, Any] + header_parameters['x-ms-version'] = self._serialize.header("self._config.version", self._config.version, 'str') + if request_id_parameter is not None: + header_parameters['x-ms-client-request-id'] = self._serialize.header("request_id_parameter", request_id_parameter, 'str') + header_parameters['x-ms-legal-hold'] = self._serialize.header("legal_hold", legal_hold, 'bool') + header_parameters['Accept'] = self._serialize.header("accept", accept, 'str') + + request = self._client.put(url, query_parameters, header_parameters) + pipeline_response = self._client._pipeline.run(request, stream=False, **kwargs) + response = pipeline_response.http_response + + if response.status_code not in [200]: + map_error(status_code=response.status_code, response=response, error_map=error_map) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) + raise HttpResponseError(response=response, model=error) + + response_headers = {} + response_headers['x-ms-client-request-id']=self._deserialize('str', response.headers.get('x-ms-client-request-id')) + response_headers['x-ms-request-id']=self._deserialize('str', response.headers.get('x-ms-request-id')) + response_headers['x-ms-version']=self._deserialize('str', response.headers.get('x-ms-version')) + response_headers['Date']=self._deserialize('rfc-1123', response.headers.get('Date')) + response_headers['x-ms-legal-hold']=self._deserialize('bool', response.headers.get('x-ms-legal-hold')) + + if cls: + return cls(pipeline_response, None, response_headers) + + set_legal_hold.metadata = {'url': '/{containerName}/{blob}'} # type: ignore + def set_metadata( self, timeout=None, # type: Optional[int] @@ -1431,7 +1674,7 @@ def set_metadata( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -1548,7 +1791,7 @@ def acquire_lease( if response.status_code not in [201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -1652,7 +1895,7 @@ def release_lease( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -1755,7 +1998,7 @@ def renew_lease( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -1865,7 +2108,7 @@ def change_lease( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -1976,7 +2219,7 @@ def break_lease( if response.status_code not in [202]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -2119,7 +2362,7 @@ def create_snapshot( if response.status_code not in [201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -2148,6 +2391,9 @@ def start_copy_from_url( request_id_parameter=None, # type: Optional[str] blob_tags_string=None, # type: Optional[str] seal_blob=None, # type: Optional[bool] + immutability_policy_expiry=None, # type: Optional[datetime.datetime] + immutability_policy_mode=None, # type: Optional[Union[str, "_models.BlobImmutabilityPolicyMode"]] + legal_hold=None, # type: Optional[bool] source_modified_access_conditions=None, # type: Optional["_models.SourceModifiedAccessConditions"] modified_access_conditions=None, # type: Optional["_models.ModifiedAccessConditions"] lease_access_conditions=None, # type: Optional["_models.LeaseAccessConditions"] @@ -2186,6 +2432,13 @@ def start_copy_from_url( :param seal_blob: Overrides the sealed state of the destination blob. Service version 2019-12-12 and newer. :type seal_blob: bool + :param immutability_policy_expiry: Specifies the date time when the blobs immutability policy + is set to expire. + :type immutability_policy_expiry: ~datetime.datetime + :param immutability_policy_mode: Specifies the immutability policy mode to set on the blob. + :type immutability_policy_mode: str or ~azure.storage.blob.models.BlobImmutabilityPolicyMode + :param legal_hold: Specified if a legal hold should be set on the blob. + :type legal_hold: bool :param source_modified_access_conditions: Parameter group. :type source_modified_access_conditions: ~azure.storage.blob.models.SourceModifiedAccessConditions :param modified_access_conditions: Parameter group. @@ -2280,6 +2533,12 @@ def start_copy_from_url( header_parameters['x-ms-tags'] = self._serialize.header("blob_tags_string", blob_tags_string, 'str') if seal_blob is not None: header_parameters['x-ms-seal-blob'] = self._serialize.header("seal_blob", seal_blob, 'bool') + if immutability_policy_expiry is not None: + header_parameters['x-ms-immutability-policy-until-date'] = self._serialize.header("immutability_policy_expiry", immutability_policy_expiry, 'rfc-1123') + if immutability_policy_mode is not None: + header_parameters['x-ms-immutability-policy-mode'] = self._serialize.header("immutability_policy_mode", immutability_policy_mode, 'str') + if legal_hold is not None: + header_parameters['x-ms-legal-hold'] = self._serialize.header("legal_hold", legal_hold, 'bool') header_parameters['Accept'] = self._serialize.header("accept", accept, 'str') request = self._client.put(url, query_parameters, header_parameters) @@ -2288,7 +2547,7 @@ def start_copy_from_url( if response.status_code not in [202]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -2316,6 +2575,9 @@ def copy_from_url( request_id_parameter=None, # type: Optional[str] source_content_md5=None, # type: Optional[bytearray] blob_tags_string=None, # type: Optional[str] + immutability_policy_expiry=None, # type: Optional[datetime.datetime] + immutability_policy_mode=None, # type: Optional[Union[str, "_models.BlobImmutabilityPolicyMode"]] + legal_hold=None, # type: Optional[bool] source_modified_access_conditions=None, # type: Optional["_models.SourceModifiedAccessConditions"] modified_access_conditions=None, # type: Optional["_models.ModifiedAccessConditions"] lease_access_conditions=None, # type: Optional["_models.LeaseAccessConditions"] @@ -2352,6 +2614,13 @@ def copy_from_url( :type source_content_md5: bytearray :param blob_tags_string: Optional. Used to set blob tags in various blob operations. :type blob_tags_string: str + :param immutability_policy_expiry: Specifies the date time when the blobs immutability policy + is set to expire. + :type immutability_policy_expiry: ~datetime.datetime + :param immutability_policy_mode: Specifies the immutability policy mode to set on the blob. + :type immutability_policy_mode: str or ~azure.storage.blob.models.BlobImmutabilityPolicyMode + :param legal_hold: Specified if a legal hold should be set on the blob. + :type legal_hold: bool :param source_modified_access_conditions: Parameter group. :type source_modified_access_conditions: ~azure.storage.blob.models.SourceModifiedAccessConditions :param modified_access_conditions: Parameter group. @@ -2442,6 +2711,12 @@ def copy_from_url( header_parameters['x-ms-source-content-md5'] = self._serialize.header("source_content_md5", source_content_md5, 'bytearray') if blob_tags_string is not None: header_parameters['x-ms-tags'] = self._serialize.header("blob_tags_string", blob_tags_string, 'str') + if immutability_policy_expiry is not None: + header_parameters['x-ms-immutability-policy-until-date'] = self._serialize.header("immutability_policy_expiry", immutability_policy_expiry, 'rfc-1123') + if immutability_policy_mode is not None: + header_parameters['x-ms-immutability-policy-mode'] = self._serialize.header("immutability_policy_mode", immutability_policy_mode, 'str') + if legal_hold is not None: + header_parameters['x-ms-legal-hold'] = self._serialize.header("legal_hold", legal_hold, 'bool') header_parameters['Accept'] = self._serialize.header("accept", accept, 'str') request = self._client.put(url, query_parameters, header_parameters) @@ -2450,7 +2725,7 @@ def copy_from_url( if response.status_code not in [202]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -2543,7 +2818,7 @@ def abort_copy_from_url( if response.status_code not in [204]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -2658,7 +2933,7 @@ def set_tier( if response.status_code not in [200, 202]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -2721,7 +2996,7 @@ def get_account_info( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -2865,7 +3140,7 @@ def query( if response.status_code not in [200, 206]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -3033,7 +3308,7 @@ def get_tags( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -3150,7 +3425,7 @@ def set_tags( if response.status_code not in [204]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} diff --git a/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/operations/_block_blob_operations.py b/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/operations/_block_blob_operations.py index 7bb13abc2b7f..c36c52ad95b0 100644 --- a/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/operations/_block_blob_operations.py +++ b/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/operations/_block_blob_operations.py @@ -55,6 +55,9 @@ def upload( tier=None, # type: Optional[Union[str, "_models.AccessTierOptional"]] request_id_parameter=None, # type: Optional[str] blob_tags_string=None, # type: Optional[str] + immutability_policy_expiry=None, # type: Optional[datetime.datetime] + immutability_policy_mode=None, # type: Optional[Union[str, "_models.BlobImmutabilityPolicyMode"]] + legal_hold=None, # type: Optional[bool] blob_http_headers=None, # type: Optional["_models.BlobHTTPHeaders"] lease_access_conditions=None, # type: Optional["_models.LeaseAccessConditions"] cpk_info=None, # type: Optional["_models.CpkInfo"] @@ -99,6 +102,13 @@ def upload( :type request_id_parameter: str :param blob_tags_string: Optional. Used to set blob tags in various blob operations. :type blob_tags_string: str + :param immutability_policy_expiry: Specifies the date time when the blobs immutability policy + is set to expire. + :type immutability_policy_expiry: ~datetime.datetime + :param immutability_policy_mode: Specifies the immutability policy mode to set on the blob. + :type immutability_policy_mode: str or ~azure.storage.blob.models.BlobImmutabilityPolicyMode + :param legal_hold: Specified if a legal hold should be set on the blob. + :type legal_hold: bool :param blob_http_headers: Parameter group. :type blob_http_headers: ~azure.storage.blob.models.BlobHTTPHeaders :param lease_access_conditions: Parameter group. @@ -218,6 +228,12 @@ def upload( header_parameters['x-ms-client-request-id'] = self._serialize.header("request_id_parameter", request_id_parameter, 'str') if blob_tags_string is not None: header_parameters['x-ms-tags'] = self._serialize.header("blob_tags_string", blob_tags_string, 'str') + if immutability_policy_expiry is not None: + header_parameters['x-ms-immutability-policy-until-date'] = self._serialize.header("immutability_policy_expiry", immutability_policy_expiry, 'rfc-1123') + if immutability_policy_mode is not None: + header_parameters['x-ms-immutability-policy-mode'] = self._serialize.header("immutability_policy_mode", immutability_policy_mode, 'str') + if legal_hold is not None: + header_parameters['x-ms-legal-hold'] = self._serialize.header("legal_hold", legal_hold, 'bool') header_parameters['Content-Type'] = self._serialize.header("content_type", content_type, 'str') header_parameters['Accept'] = self._serialize.header("accept", accept, 'str') @@ -229,7 +245,7 @@ def upload( if response.status_code not in [201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -471,7 +487,7 @@ def put_blob_from_url( if response.status_code not in [201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -612,7 +628,7 @@ def stage_block( if response.status_code not in [201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -774,7 +790,7 @@ def stage_block_from_url( if response.status_code not in [201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -804,6 +820,9 @@ def commit_block_list( tier=None, # type: Optional[Union[str, "_models.AccessTierOptional"]] request_id_parameter=None, # type: Optional[str] blob_tags_string=None, # type: Optional[str] + immutability_policy_expiry=None, # type: Optional[datetime.datetime] + immutability_policy_mode=None, # type: Optional[Union[str, "_models.BlobImmutabilityPolicyMode"]] + legal_hold=None, # type: Optional[bool] blob_http_headers=None, # type: Optional["_models.BlobHTTPHeaders"] lease_access_conditions=None, # type: Optional["_models.LeaseAccessConditions"] cpk_info=None, # type: Optional["_models.CpkInfo"] @@ -851,6 +870,13 @@ def commit_block_list( :type request_id_parameter: str :param blob_tags_string: Optional. Used to set blob tags in various blob operations. :type blob_tags_string: str + :param immutability_policy_expiry: Specifies the date time when the blobs immutability policy + is set to expire. + :type immutability_policy_expiry: ~datetime.datetime + :param immutability_policy_mode: Specifies the immutability policy mode to set on the blob. + :type immutability_policy_mode: str or ~azure.storage.blob.models.BlobImmutabilityPolicyMode + :param legal_hold: Specified if a legal hold should be set on the blob. + :type legal_hold: bool :param blob_http_headers: Parameter group. :type blob_http_headers: ~azure.storage.blob.models.BlobHTTPHeaders :param lease_access_conditions: Parameter group. @@ -971,6 +997,12 @@ def commit_block_list( header_parameters['x-ms-client-request-id'] = self._serialize.header("request_id_parameter", request_id_parameter, 'str') if blob_tags_string is not None: header_parameters['x-ms-tags'] = self._serialize.header("blob_tags_string", blob_tags_string, 'str') + if immutability_policy_expiry is not None: + header_parameters['x-ms-immutability-policy-until-date'] = self._serialize.header("immutability_policy_expiry", immutability_policy_expiry, 'rfc-1123') + if immutability_policy_mode is not None: + header_parameters['x-ms-immutability-policy-mode'] = self._serialize.header("immutability_policy_mode", immutability_policy_mode, 'str') + if legal_hold is not None: + header_parameters['x-ms-legal-hold'] = self._serialize.header("legal_hold", legal_hold, 'bool') header_parameters['Content-Type'] = self._serialize.header("content_type", content_type, 'str') header_parameters['Accept'] = self._serialize.header("accept", accept, 'str') @@ -983,7 +1015,7 @@ def commit_block_list( if response.status_code not in [201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -1092,7 +1124,7 @@ def get_block_list( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} diff --git a/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/operations/_container_operations.py b/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/operations/_container_operations.py index 32197532ef36..f01bbc4393fe 100644 --- a/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/operations/_container_operations.py +++ b/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/operations/_container_operations.py @@ -130,7 +130,7 @@ def create( if response.status_code not in [201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -211,7 +211,7 @@ def get_properties( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -230,6 +230,7 @@ def get_properties( response_headers['x-ms-has-legal-hold']=self._deserialize('bool', response.headers.get('x-ms-has-legal-hold')) response_headers['x-ms-default-encryption-scope']=self._deserialize('str', response.headers.get('x-ms-default-encryption-scope')) response_headers['x-ms-deny-encryption-scope-override']=self._deserialize('bool', response.headers.get('x-ms-deny-encryption-scope-override')) + response_headers['x-ms-version-level-worm-enabled']=self._deserialize('bool', response.headers.get('x-ms-version-level-worm-enabled')) if cls: return cls(pipeline_response, None, response_headers) @@ -313,7 +314,7 @@ def delete( if response.status_code not in [202]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -412,7 +413,7 @@ def set_metadata( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -495,7 +496,7 @@ def get_access_policy( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -611,7 +612,7 @@ def set_access_policy( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -696,7 +697,7 @@ def restore( if response.status_code not in [201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -777,7 +778,7 @@ def rename( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -865,7 +866,7 @@ def submit_batch( if response.status_code not in [202]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -967,7 +968,7 @@ def acquire_lease( if response.status_code not in [201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -1061,7 +1062,7 @@ def release_lease( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -1154,7 +1155,7 @@ def renew_lease( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -1255,7 +1256,7 @@ def break_lease( if response.status_code not in [202]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -1355,7 +1356,7 @@ def change_lease( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -1461,7 +1462,7 @@ def list_blob_flat_segment( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -1574,7 +1575,7 @@ def list_blob_hierarchy_segment( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -1635,7 +1636,7 @@ def get_account_info( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} diff --git a/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/operations/_directory_operations.py b/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/operations/_directory_operations.py index f025757048df..5ecabc18b75b 100644 --- a/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/operations/_directory_operations.py +++ b/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/operations/_directory_operations.py @@ -182,7 +182,7 @@ def create( if response.status_code not in [201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.DataLakeStorageError, response) + error = self._deserialize.failsafe_deserialize(_models.DataLakeStorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -381,7 +381,7 @@ def rename( if response.status_code not in [201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.DataLakeStorageError, response) + error = self._deserialize.failsafe_deserialize(_models.DataLakeStorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -495,7 +495,7 @@ def delete( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.DataLakeStorageError, response) + error = self._deserialize.failsafe_deserialize(_models.DataLakeStorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -620,7 +620,7 @@ def set_access_control( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.DataLakeStorageError, response) + error = self._deserialize.failsafe_deserialize(_models.DataLakeStorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -728,7 +728,7 @@ def get_access_control( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.DataLakeStorageError, response) + error = self._deserialize.failsafe_deserialize(_models.DataLakeStorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} diff --git a/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/operations/_page_blob_operations.py b/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/operations/_page_blob_operations.py index e7f8a0223351..27e1afec657e 100644 --- a/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/operations/_page_blob_operations.py +++ b/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/operations/_page_blob_operations.py @@ -55,6 +55,9 @@ def create( blob_sequence_number=0, # type: Optional[int] request_id_parameter=None, # type: Optional[str] blob_tags_string=None, # type: Optional[str] + immutability_policy_expiry=None, # type: Optional[datetime.datetime] + immutability_policy_mode=None, # type: Optional[Union[str, "_models.BlobImmutabilityPolicyMode"]] + legal_hold=None, # type: Optional[bool] blob_http_headers=None, # type: Optional["_models.BlobHTTPHeaders"] lease_access_conditions=None, # type: Optional["_models.LeaseAccessConditions"] cpk_info=None, # type: Optional["_models.CpkInfo"] @@ -97,6 +100,13 @@ def create( :type request_id_parameter: str :param blob_tags_string: Optional. Used to set blob tags in various blob operations. :type blob_tags_string: str + :param immutability_policy_expiry: Specifies the date time when the blobs immutability policy + is set to expire. + :type immutability_policy_expiry: ~datetime.datetime + :param immutability_policy_mode: Specifies the immutability policy mode to set on the blob. + :type immutability_policy_mode: str or ~azure.storage.blob.models.BlobImmutabilityPolicyMode + :param legal_hold: Specified if a legal hold should be set on the blob. + :type legal_hold: bool :param blob_http_headers: Parameter group. :type blob_http_headers: ~azure.storage.blob.models.BlobHTTPHeaders :param lease_access_conditions: Parameter group. @@ -216,6 +226,12 @@ def create( header_parameters['x-ms-client-request-id'] = self._serialize.header("request_id_parameter", request_id_parameter, 'str') if blob_tags_string is not None: header_parameters['x-ms-tags'] = self._serialize.header("blob_tags_string", blob_tags_string, 'str') + if immutability_policy_expiry is not None: + header_parameters['x-ms-immutability-policy-until-date'] = self._serialize.header("immutability_policy_expiry", immutability_policy_expiry, 'rfc-1123') + if immutability_policy_mode is not None: + header_parameters['x-ms-immutability-policy-mode'] = self._serialize.header("immutability_policy_mode", immutability_policy_mode, 'str') + if legal_hold is not None: + header_parameters['x-ms-legal-hold'] = self._serialize.header("legal_hold", legal_hold, 'bool') header_parameters['Accept'] = self._serialize.header("accept", accept, 'str') request = self._client.put(url, query_parameters, header_parameters) @@ -224,7 +240,7 @@ def create( if response.status_code not in [201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -406,7 +422,7 @@ def upload_pages( if response.status_code not in [201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -570,7 +586,7 @@ def clear_pages( if response.status_code not in [201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -773,7 +789,7 @@ def upload_pages_from_url( if response.status_code not in [201]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -897,7 +913,7 @@ def get_page_ranges( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -1037,7 +1053,7 @@ def get_page_ranges_diff( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -1176,7 +1192,7 @@ def resize( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -1294,7 +1310,7 @@ def update_sequence_number( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -1402,7 +1418,7 @@ def copy_incremental( if response.status_code not in [202]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} diff --git a/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/operations/_service_operations.py b/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/operations/_service_operations.py index 72f7a73fdf50..4a0d8b3bb38a 100644 --- a/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/operations/_service_operations.py +++ b/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/operations/_service_operations.py @@ -109,7 +109,7 @@ def set_properties( if response.status_code not in [202]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -180,7 +180,7 @@ def get_properties( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -254,7 +254,7 @@ def get_statistics( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -358,7 +358,7 @@ def list_containers_segment( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -439,7 +439,7 @@ def get_user_delegation_key( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -499,7 +499,7 @@ def get_account_info( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -588,7 +588,7 @@ def submit_batch( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} @@ -686,7 +686,7 @@ def filter_blobs( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize(_models.StorageError, response) + error = self._deserialize.failsafe_deserialize(_models.StorageError, response) raise HttpResponseError(response=response, model=error) response_headers = {} diff --git a/sdk/storage/azure-storage-blob/azure/storage/blob/_models.py b/sdk/storage/azure-storage-blob/azure/storage/blob/_models.py index 00a53dc68bfb..d1ba86751695 100644 --- a/sdk/storage/azure-storage-blob/azure/storage/blob/_models.py +++ b/sdk/storage/azure-storage-blob/azure/storage/blob/_models.py @@ -67,6 +67,14 @@ class PremiumPageBlobTier(str, Enum): P60 = 'P60' #: P60 Tier +class QuickQueryDialect(str, Enum): + """Specifies the quick query input/output dialect.""" + + DelimitedTextDialect = 'DelimitedTextDialect' + DelimitedJsonDialect = 'DelimitedJsonDialect' + ParquetDialect = 'ParquetDialect' + + class SequenceNumberAction(str, Enum): """Sequence number actions.""" @@ -1037,6 +1045,11 @@ def __init__(self, **kwargs): self.has_header = kwargs.pop('has_header', False) +class ParquetDialect(object): + """Defines parquet input serialization for a blob query request.""" + pass + + class ArrowDialect(ArrowField): """field of an arrow schema. diff --git a/sdk/storage/azure-storage-blob/azure/storage/blob/_quick_query_helper.py b/sdk/storage/azure-storage-blob/azure/storage/blob/_quick_query_helper.py index eb51d987b9ac..3164337308c3 100644 --- a/sdk/storage/azure-storage-blob/azure/storage/blob/_quick_query_helper.py +++ b/sdk/storage/azure-storage-blob/azure/storage/blob/_quick_query_helper.py @@ -123,7 +123,6 @@ def records(self): yield record - class QuickQueryStreamer(object): """ File-like streaming iterator. diff --git a/sdk/storage/azure-storage-blob/azure/storage/blob/_serialize.py b/sdk/storage/azure-storage-blob/azure/storage/blob/_serialize.py index 57f748af1e20..c2e150dda40d 100644 --- a/sdk/storage/azure-storage-blob/azure/storage/blob/_serialize.py +++ b/sdk/storage/azure-storage-blob/azure/storage/blob/_serialize.py @@ -13,7 +13,7 @@ from ._models import ( ContainerEncryptionScope, - DelimitedJsonDialect) + DelimitedJsonDialect, ParquetDialect) from ._generated.models import ( ModifiedAccessConditions, SourceModifiedAccessConditions, @@ -37,7 +37,8 @@ '2019-12-12', '2020-02-10', '2020-04-08', - '2020-06-12' + '2020-06-12', + '2020-08-04' ] @@ -161,7 +162,12 @@ def serialize_blob_tags(tags=None): def serialize_query_format(formater): - if isinstance(formater, DelimitedJsonDialect): + if isinstance(formater, ParquetDialect): + qq_format = QueryFormat( + type=QueryFormatType.PARQUET, + parquet_text_configuration=' ' + ) + elif isinstance(formater, DelimitedJsonDialect): serialization_settings = JsonTextConfiguration( record_separator=formater.delimiter ) @@ -194,5 +200,5 @@ def serialize_query_format(formater): elif not formater: return None else: - raise TypeError("Format must be DelimitedTextDialect or DelimitedJsonDialect.") + raise TypeError("Format must be DelimitedTextDialect or DelimitedJsonDialect or ParquetDialect.") return QuerySerialization(format=qq_format) diff --git a/sdk/storage/azure-storage-blob/azure/storage/blob/_version.py b/sdk/storage/azure-storage-blob/azure/storage/blob/_version.py index b4b6e3dd3c20..b21fcd5488bb 100644 --- a/sdk/storage/azure-storage-blob/azure/storage/blob/_version.py +++ b/sdk/storage/azure-storage-blob/azure/storage/blob/_version.py @@ -4,4 +4,4 @@ # license information. # -------------------------------------------------------------------------- -VERSION = "12.8.1b1" +VERSION = "12.9.0b1" diff --git a/sdk/storage/azure-storage-blob/setup.py b/sdk/storage/azure-storage-blob/setup.py index bdeb5bf94b6d..ebd76c2903c8 100644 --- a/sdk/storage/azure-storage-blob/setup.py +++ b/sdk/storage/azure-storage-blob/setup.py @@ -94,7 +94,7 @@ ]), install_requires=[ "azure-core<2.0.0,>=1.10.0", - "msrest>=0.6.18", + "msrest>=0.6.21", "cryptography>=2.1.4" ], extras_require={ diff --git a/sdk/storage/azure-storage-blob/swagger/README.md b/sdk/storage/azure-storage-blob/swagger/README.md index e54914c0e21d..5364044aa8ee 100644 --- a/sdk/storage/azure-storage-blob/swagger/README.md +++ b/sdk/storage/azure-storage-blob/swagger/README.md @@ -16,7 +16,7 @@ autorest --v3 --python ### Settings ``` yaml -input-file: https://raw.githubusercontent.com/Azure/azure-rest-api-specs/storage-dataplane-preview/specification/storage/data-plane/Microsoft.BlobStorage/preview/2020-04-08/blob.json +input-file: https://raw.githubusercontent.com/Azure/azure-rest-api-specs/storage-dataplane-preview/specification/storage/data-plane/Microsoft.BlobStorage/preview/2020-08-04/blob.json output-folder: ../azure/storage/blob/_generated namespace: azure.storage.blob no-namespace-folders: true diff --git a/sdk/storage/azure-storage-blob/tests/parquet.parquet b/sdk/storage/azure-storage-blob/tests/parquet.parquet new file mode 100644 index 000000000000..8eff6678085d Binary files /dev/null and b/sdk/storage/azure-storage-blob/tests/parquet.parquet differ diff --git a/sdk/storage/azure-storage-blob/tests/recordings/test_quick_query.test_quick_query_input_in_parquet_format.yaml b/sdk/storage/azure-storage-blob/tests/recordings/test_quick_query.test_quick_query_input_in_parquet_format.yaml new file mode 100644 index 000000000000..c2a2eab4511c --- /dev/null +++ b/sdk/storage/azure-storage-blob/tests/recordings/test_quick_query.test_quick_query_input_in_parquet_format.yaml @@ -0,0 +1,1594 @@ +interactions: +- request: + body: null + headers: + Accept: + - application/xml + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '0' + User-Agent: + - azsdk-python-storage-blob/12.8.0 Python/3.8.5 (Windows-10-10.0.19041-SP0) + x-ms-date: + - Fri, 09 Apr 2021 04:03:14 GMT + x-ms-version: + - '2020-08-04' + method: PUT + uri: https://storagename.blob.core.windows.net/utqqcontainerb38317df?restype=container + response: + body: + string: "\uFEFFContainerAlreadyExistsThe + specified container already exists.\nRequestId:95663fec-c01e-0005-03f5-2c3b70000000\nTime:2021-04-09T04:03:15.4909578Z" + headers: + content-length: + - '230' + content-type: + - application/xml + date: + - Fri, 09 Apr 2021 04:03:14 GMT + server: + - Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0 + x-ms-error-code: + - ContainerAlreadyExists + x-ms-version: + - '2020-08-04' + status: + code: 409 + message: The specified container already exists. +- request: + body: !!binary | + UEFSMRUAFeJrFeJrLBXQDxUAFQYVBhwYAzk5ORgBMBYAFtAPGAM5OTkYATAAAAADAAAA0A8BAQAA + ADABAAAAMQEAAAAyAQAAADMBAAAANAEAAAA1AQAAADYBAAAANwEAAAA4AQAAADkCAAAAMTACAAAA + MTECAAAAMTICAAAAMTMCAAAAMTQCAAAAMTUCAAAAMTYCAAAAMTcCAAAAMTgCAAAAMTkCAAAAMjAC + AAAAMjECAAAAMjICAAAAMjMCAAAAMjQCAAAAMjUCAAAAMjYCAAAAMjcCAAAAMjgCAAAAMjkCAAAA + MzACAAAAMzECAAAAMzICAAAAMzMCAAAAMzQCAAAAMzUCAAAAMzYCAAAAMzcCAAAAMzgCAAAAMzkC + AAAANDACAAAANDECAAAANDICAAAANDMCAAAANDQCAAAANDUCAAAANDYCAAAANDcCAAAANDgCAAAA + NDkCAAAANTACAAAANTECAAAANTICAAAANTMCAAAANTQCAAAANTUCAAAANTYCAAAANTcCAAAANTgC + AAAANTkCAAAANjACAAAANjECAAAANjICAAAANjMCAAAANjQCAAAANjUCAAAANjYCAAAANjcCAAAA + NjgCAAAANjkCAAAANzACAAAANzECAAAANzICAAAANzMCAAAANzQCAAAANzUCAAAANzYCAAAANzcC + AAAANzgCAAAANzkCAAAAODACAAAAODECAAAAODICAAAAODMCAAAAODQCAAAAODUCAAAAODYCAAAA + ODcCAAAAODgCAAAAODkCAAAAOTACAAAAOTECAAAAOTICAAAAOTMCAAAAOTQCAAAAOTUCAAAAOTYC + AAAAOTcCAAAAOTgCAAAAOTkDAAAAMTAwAwAAADEwMQMAAAAxMDIDAAAAMTAzAwAAADEwNAMAAAAx + MDUDAAAAMTA2AwAAADEwNwMAAAAxMDgDAAAAMTA5AwAAADExMAMAAAAxMTEDAAAAMTEyAwAAADEx + MwMAAAAxMTQDAAAAMTE1AwAAADExNgMAAAAxMTcDAAAAMTE4AwAAADExOQMAAAAxMjADAAAAMTIx + AwAAADEyMgMAAAAxMjMDAAAAMTI0AwAAADEyNQMAAAAxMjYDAAAAMTI3AwAAADEyOAMAAAAxMjkD + AAAAMTMwAwAAADEzMQMAAAAxMzIDAAAAMTMzAwAAADEzNAMAAAAxMzUDAAAAMTM2AwAAADEzNwMA + AAAxMzgDAAAAMTM5AwAAADE0MAMAAAAxNDEDAAAAMTQyAwAAADE0MwMAAAAxNDQDAAAAMTQ1AwAA + ADE0NgMAAAAxNDcDAAAAMTQ4AwAAADE0OQMAAAAxNTADAAAAMTUxAwAAADE1MgMAAAAxNTMDAAAA + MTU0AwAAADE1NQMAAAAxNTYDAAAAMTU3AwAAADE1OAMAAAAxNTkDAAAAMTYwAwAAADE2MQMAAAAx + NjIDAAAAMTYzAwAAADE2NAMAAAAxNjUDAAAAMTY2AwAAADE2NwMAAAAxNjgDAAAAMTY5AwAAADE3 + MAMAAAAxNzEDAAAAMTcyAwAAADE3MwMAAAAxNzQDAAAAMTc1AwAAADE3NgMAAAAxNzcDAAAAMTc4 + AwAAADE3OQMAAAAxODADAAAAMTgxAwAAADE4MgMAAAAxODMDAAAAMTg0AwAAADE4NQMAAAAxODYD + AAAAMTg3AwAAADE4OAMAAAAxODkDAAAAMTkwAwAAADE5MQMAAAAxOTIDAAAAMTkzAwAAADE5NAMA + AAAxOTUDAAAAMTk2AwAAADE5NwMAAAAxOTgDAAAAMTk5AwAAADIwMAMAAAAyMDEDAAAAMjAyAwAA + ADIwMwMAAAAyMDQDAAAAMjA1AwAAADIwNgMAAAAyMDcDAAAAMjA4AwAAADIwOQMAAAAyMTADAAAA + MjExAwAAADIxMgMAAAAyMTMDAAAAMjE0AwAAADIxNQMAAAAyMTYDAAAAMjE3AwAAADIxOAMAAAAy + MTkDAAAAMjIwAwAAADIyMQMAAAAyMjIDAAAAMjIzAwAAADIyNAMAAAAyMjUDAAAAMjI2AwAAADIy + NwMAAAAyMjgDAAAAMjI5AwAAADIzMAMAAAAyMzEDAAAAMjMyAwAAADIzMwMAAAAyMzQDAAAAMjM1 + AwAAADIzNgMAAAAyMzcDAAAAMjM4AwAAADIzOQMAAAAyNDADAAAAMjQxAwAAADI0MgMAAAAyNDMD + AAAAMjQ0AwAAADI0NQMAAAAyNDYDAAAAMjQ3AwAAADI0OAMAAAAyNDkDAAAAMjUwAwAAADI1MQMA + AAAyNTIDAAAAMjUzAwAAADI1NAMAAAAyNTUDAAAAMjU2AwAAADI1NwMAAAAyNTgDAAAAMjU5AwAA + ADI2MAMAAAAyNjEDAAAAMjYyAwAAADI2MwMAAAAyNjQDAAAAMjY1AwAAADI2NgMAAAAyNjcDAAAA + MjY4AwAAADI2OQMAAAAyNzADAAAAMjcxAwAAADI3MgMAAAAyNzMDAAAAMjc0AwAAADI3NQMAAAAy + NzYDAAAAMjc3AwAAADI3OAMAAAAyNzkDAAAAMjgwAwAAADI4MQMAAAAyODIDAAAAMjgzAwAAADI4 + NAMAAAAyODUDAAAAMjg2AwAAADI4NwMAAAAyODgDAAAAMjg5AwAAADI5MAMAAAAyOTEDAAAAMjky + AwAAADI5MwMAAAAyOTQDAAAAMjk1AwAAADI5NgMAAAAyOTcDAAAAMjk4AwAAADI5OQMAAAAzMDAD + AAAAMzAxAwAAADMwMgMAAAAzMDMDAAAAMzA0AwAAADMwNQMAAAAzMDYDAAAAMzA3AwAAADMwOAMA + AAAzMDkDAAAAMzEwAwAAADMxMQMAAAAzMTIDAAAAMzEzAwAAADMxNAMAAAAzMTUDAAAAMzE2AwAA + ADMxNwMAAAAzMTgDAAAAMzE5AwAAADMyMAMAAAAzMjEDAAAAMzIyAwAAADMyMwMAAAAzMjQDAAAA + MzI1AwAAADMyNgMAAAAzMjcDAAAAMzI4AwAAADMyOQMAAAAzMzADAAAAMzMxAwAAADMzMgMAAAAz + MzMDAAAAMzM0AwAAADMzNQMAAAAzMzYDAAAAMzM3AwAAADMzOAMAAAAzMzkDAAAAMzQwAwAAADM0 + MQMAAAAzNDIDAAAAMzQzAwAAADM0NAMAAAAzNDUDAAAAMzQ2AwAAADM0NwMAAAAzNDgDAAAAMzQ5 + AwAAADM1MAMAAAAzNTEDAAAAMzUyAwAAADM1MwMAAAAzNTQDAAAAMzU1AwAAADM1NgMAAAAzNTcD + AAAAMzU4AwAAADM1OQMAAAAzNjADAAAAMzYxAwAAADM2MgMAAAAzNjMDAAAAMzY0AwAAADM2NQMA + AAAzNjYDAAAAMzY3AwAAADM2OAMAAAAzNjkDAAAAMzcwAwAAADM3MQMAAAAzNzIDAAAAMzczAwAA + ADM3NAMAAAAzNzUDAAAAMzc2AwAAADM3NwMAAAAzNzgDAAAAMzc5AwAAADM4MAMAAAAzODEDAAAA + MzgyAwAAADM4MwMAAAAzODQDAAAAMzg1AwAAADM4NgMAAAAzODcDAAAAMzg4AwAAADM4OQMAAAAz + OTADAAAAMzkxAwAAADM5MgMAAAAzOTMDAAAAMzk0AwAAADM5NQMAAAAzOTYDAAAAMzk3AwAAADM5 + OAMAAAAzOTkDAAAANDAwAwAAADQwMQMAAAA0MDIDAAAANDAzAwAAADQwNAMAAAA0MDUDAAAANDA2 + AwAAADQwNwMAAAA0MDgDAAAANDA5AwAAADQxMAMAAAA0MTEDAAAANDEyAwAAADQxMwMAAAA0MTQD + AAAANDE1AwAAADQxNgMAAAA0MTcDAAAANDE4AwAAADQxOQMAAAA0MjADAAAANDIxAwAAADQyMgMA + AAA0MjMDAAAANDI0AwAAADQyNQMAAAA0MjYDAAAANDI3AwAAADQyOAMAAAA0MjkDAAAANDMwAwAA + ADQzMQMAAAA0MzIDAAAANDMzAwAAADQzNAMAAAA0MzUDAAAANDM2AwAAADQzNwMAAAA0MzgDAAAA + NDM5AwAAADQ0MAMAAAA0NDEDAAAANDQyAwAAADQ0MwMAAAA0NDQDAAAANDQ1AwAAADQ0NgMAAAA0 + NDcDAAAANDQ4AwAAADQ0OQMAAAA0NTADAAAANDUxAwAAADQ1MgMAAAA0NTMDAAAANDU0AwAAADQ1 + NQMAAAA0NTYDAAAANDU3AwAAADQ1OAMAAAA0NTkDAAAANDYwAwAAADQ2MQMAAAA0NjIDAAAANDYz + AwAAADQ2NAMAAAA0NjUDAAAANDY2AwAAADQ2NwMAAAA0NjgDAAAANDY5AwAAADQ3MAMAAAA0NzED + AAAANDcyAwAAADQ3MwMAAAA0NzQDAAAANDc1AwAAADQ3NgMAAAA0NzcDAAAANDc4AwAAADQ3OQMA + AAA0ODADAAAANDgxAwAAADQ4MgMAAAA0ODMDAAAANDg0AwAAADQ4NQMAAAA0ODYDAAAANDg3AwAA + ADQ4OAMAAAA0ODkDAAAANDkwAwAAADQ5MQMAAAA0OTIDAAAANDkzAwAAADQ5NAMAAAA0OTUDAAAA + NDk2AwAAADQ5NwMAAAA0OTgDAAAANDk5AwAAADUwMAMAAAA1MDEDAAAANTAyAwAAADUwMwMAAAA1 + MDQDAAAANTA1AwAAADUwNgMAAAA1MDcDAAAANTA4AwAAADUwOQMAAAA1MTADAAAANTExAwAAADUx + MgMAAAA1MTMDAAAANTE0AwAAADUxNQMAAAA1MTYDAAAANTE3AwAAADUxOAMAAAA1MTkDAAAANTIw + AwAAADUyMQMAAAA1MjIDAAAANTIzAwAAADUyNAMAAAA1MjUDAAAANTI2AwAAADUyNwMAAAA1MjgD + AAAANTI5AwAAADUzMAMAAAA1MzEDAAAANTMyAwAAADUzMwMAAAA1MzQDAAAANTM1AwAAADUzNgMA + AAA1MzcDAAAANTM4AwAAADUzOQMAAAA1NDADAAAANTQxAwAAADU0MgMAAAA1NDMDAAAANTQ0AwAA + ADU0NQMAAAA1NDYDAAAANTQ3AwAAADU0OAMAAAA1NDkDAAAANTUwAwAAADU1MQMAAAA1NTIDAAAA + NTUzAwAAADU1NAMAAAA1NTUDAAAANTU2AwAAADU1NwMAAAA1NTgDAAAANTU5AwAAADU2MAMAAAA1 + NjEDAAAANTYyAwAAADU2MwMAAAA1NjQDAAAANTY1AwAAADU2NgMAAAA1NjcDAAAANTY4AwAAADU2 + OQMAAAA1NzADAAAANTcxAwAAADU3MgMAAAA1NzMDAAAANTc0AwAAADU3NQMAAAA1NzYDAAAANTc3 + AwAAADU3OAMAAAA1NzkDAAAANTgwAwAAADU4MQMAAAA1ODIDAAAANTgzAwAAADU4NAMAAAA1ODUD + AAAANTg2AwAAADU4NwMAAAA1ODgDAAAANTg5AwAAADU5MAMAAAA1OTEDAAAANTkyAwAAADU5MwMA + AAA1OTQDAAAANTk1AwAAADU5NgMAAAA1OTcDAAAANTk4AwAAADU5OQMAAAA2MDADAAAANjAxAwAA + ADYwMgMAAAA2MDMDAAAANjA0AwAAADYwNQMAAAA2MDYDAAAANjA3AwAAADYwOAMAAAA2MDkDAAAA + NjEwAwAAADYxMQMAAAA2MTIDAAAANjEzAwAAADYxNAMAAAA2MTUDAAAANjE2AwAAADYxNwMAAAA2 + MTgDAAAANjE5AwAAADYyMAMAAAA2MjEDAAAANjIyAwAAADYyMwMAAAA2MjQDAAAANjI1AwAAADYy + NgMAAAA2MjcDAAAANjI4AwAAADYyOQMAAAA2MzADAAAANjMxAwAAADYzMgMAAAA2MzMDAAAANjM0 + AwAAADYzNQMAAAA2MzYDAAAANjM3AwAAADYzOAMAAAA2MzkDAAAANjQwAwAAADY0MQMAAAA2NDID + AAAANjQzAwAAADY0NAMAAAA2NDUDAAAANjQ2AwAAADY0NwMAAAA2NDgDAAAANjQ5AwAAADY1MAMA + AAA2NTEDAAAANjUyAwAAADY1MwMAAAA2NTQDAAAANjU1AwAAADY1NgMAAAA2NTcDAAAANjU4AwAA + ADY1OQMAAAA2NjADAAAANjYxAwAAADY2MgMAAAA2NjMDAAAANjY0AwAAADY2NQMAAAA2NjYDAAAA + NjY3AwAAADY2OAMAAAA2NjkDAAAANjcwAwAAADY3MQMAAAA2NzIDAAAANjczAwAAADY3NAMAAAA2 + NzUDAAAANjc2AwAAADY3NwMAAAA2NzgDAAAANjc5AwAAADY4MAMAAAA2ODEDAAAANjgyAwAAADY4 + MwMAAAA2ODQDAAAANjg1AwAAADY4NgMAAAA2ODcDAAAANjg4AwAAADY4OQMAAAA2OTADAAAANjkx + AwAAADY5MgMAAAA2OTMDAAAANjk0AwAAADY5NQMAAAA2OTYDAAAANjk3AwAAADY5OAMAAAA2OTkD + AAAANzAwAwAAADcwMQMAAAA3MDIDAAAANzAzAwAAADcwNAMAAAA3MDUDAAAANzA2AwAAADcwNwMA + AAA3MDgDAAAANzA5AwAAADcxMAMAAAA3MTEDAAAANzEyAwAAADcxMwMAAAA3MTQDAAAANzE1AwAA + ADcxNgMAAAA3MTcDAAAANzE4AwAAADcxOQMAAAA3MjADAAAANzIxAwAAADcyMgMAAAA3MjMDAAAA + NzI0AwAAADcyNQMAAAA3MjYDAAAANzI3AwAAADcyOAMAAAA3MjkDAAAANzMwAwAAADczMQMAAAA3 + MzIDAAAANzMzAwAAADczNAMAAAA3MzUDAAAANzM2AwAAADczNwMAAAA3MzgDAAAANzM5AwAAADc0 + MAMAAAA3NDEDAAAANzQyAwAAADc0MwMAAAA3NDQDAAAANzQ1AwAAADc0NgMAAAA3NDcDAAAANzQ4 + AwAAADc0OQMAAAA3NTADAAAANzUxAwAAADc1MgMAAAA3NTMDAAAANzU0AwAAADc1NQMAAAA3NTYD + AAAANzU3AwAAADc1OAMAAAA3NTkDAAAANzYwAwAAADc2MQMAAAA3NjIDAAAANzYzAwAAADc2NAMA + AAA3NjUDAAAANzY2AwAAADc2NwMAAAA3NjgDAAAANzY5AwAAADc3MAMAAAA3NzEDAAAANzcyAwAA + ADc3MwMAAAA3NzQDAAAANzc1AwAAADc3NgMAAAA3NzcDAAAANzc4AwAAADc3OQMAAAA3ODADAAAA + NzgxAwAAADc4MgMAAAA3ODMDAAAANzg0AwAAADc4NQMAAAA3ODYDAAAANzg3AwAAADc4OAMAAAA3 + ODkDAAAANzkwAwAAADc5MQMAAAA3OTIDAAAANzkzAwAAADc5NAMAAAA3OTUDAAAANzk2AwAAADc5 + NwMAAAA3OTgDAAAANzk5AwAAADgwMAMAAAA4MDEDAAAAODAyAwAAADgwMwMAAAA4MDQDAAAAODA1 + AwAAADgwNgMAAAA4MDcDAAAAODA4AwAAADgwOQMAAAA4MTADAAAAODExAwAAADgxMgMAAAA4MTMD + AAAAODE0AwAAADgxNQMAAAA4MTYDAAAAODE3AwAAADgxOAMAAAA4MTkDAAAAODIwAwAAADgyMQMA + AAA4MjIDAAAAODIzAwAAADgyNAMAAAA4MjUDAAAAODI2AwAAADgyNwMAAAA4MjgDAAAAODI5AwAA + ADgzMAMAAAA4MzEDAAAAODMyAwAAADgzMwMAAAA4MzQDAAAAODM1AwAAADgzNgMAAAA4MzcDAAAA + ODM4AwAAADgzOQMAAAA4NDADAAAAODQxAwAAADg0MgMAAAA4NDMDAAAAODQ0AwAAADg0NQMAAAA4 + NDYDAAAAODQ3AwAAADg0OAMAAAA4NDkDAAAAODUwAwAAADg1MQMAAAA4NTIDAAAAODUzAwAAADg1 + NAMAAAA4NTUDAAAAODU2AwAAADg1NwMAAAA4NTgDAAAAODU5AwAAADg2MAMAAAA4NjEDAAAAODYy + AwAAADg2MwMAAAA4NjQDAAAAODY1AwAAADg2NgMAAAA4NjcDAAAAODY4AwAAADg2OQMAAAA4NzAD + AAAAODcxAwAAADg3MgMAAAA4NzMDAAAAODc0AwAAADg3NQMAAAA4NzYDAAAAODc3AwAAADg3OAMA + AAA4NzkDAAAAODgwAwAAADg4MQMAAAA4ODIDAAAAODgzAwAAADg4NAMAAAA4ODUDAAAAODg2AwAA + ADg4NwMAAAA4ODgDAAAAODg5AwAAADg5MAMAAAA4OTEDAAAAODkyAwAAADg5MwMAAAA4OTQDAAAA + ODk1AwAAADg5NgMAAAA4OTcDAAAAODk4AwAAADg5OQMAAAA5MDADAAAAOTAxAwAAADkwMgMAAAA5 + MDMDAAAAOTA0AwAAADkwNQMAAAA5MDYDAAAAOTA3AwAAADkwOAMAAAA5MDkDAAAAOTEwAwAAADkx + MQMAAAA5MTIDAAAAOTEzAwAAADkxNAMAAAA5MTUDAAAAOTE2AwAAADkxNwMAAAA5MTgDAAAAOTE5 + AwAAADkyMAMAAAA5MjEDAAAAOTIyAwAAADkyMwMAAAA5MjQDAAAAOTI1AwAAADkyNgMAAAA5MjcD + AAAAOTI4AwAAADkyOQMAAAA5MzADAAAAOTMxAwAAADkzMgMAAAA5MzMDAAAAOTM0AwAAADkzNQMA + AAA5MzYDAAAAOTM3AwAAADkzOAMAAAA5MzkDAAAAOTQwAwAAADk0MQMAAAA5NDIDAAAAOTQzAwAA + ADk0NAMAAAA5NDUDAAAAOTQ2AwAAADk0NwMAAAA5NDgDAAAAOTQ5AwAAADk1MAMAAAA5NTEDAAAA + OTUyAwAAADk1MwMAAAA5NTQDAAAAOTU1AwAAADk1NgMAAAA5NTcDAAAAOTU4AwAAADk1OQMAAAA5 + NjADAAAAOTYxAwAAADk2MgMAAAA5NjMDAAAAOTY0AwAAADk2NQMAAAA5NjYDAAAAOTY3AwAAADk2 + OAMAAAA5NjkDAAAAOTcwAwAAADk3MQMAAAA5NzIDAAAAOTczAwAAADk3NAMAAAA5NzUDAAAAOTc2 + AwAAADk3NwMAAAA5NzgDAAAAOTc5AwAAADk4MAMAAAA5ODEDAAAAOTgyAwAAADk4MwMAAAA5ODQD + AAAAOTg1AwAAADk4NgMAAAA5ODcDAAAAOTg4AwAAADk4OQMAAAA5OTADAAAAOTkxAwAAADk5MgMA + AAA5OTMDAAAAOTk0AwAAADk5NQMAAAA5OTYDAAAAOTk3AwAAADk5OAMAAAA5OTkVABWO+gEVjvoB + LBXQDxUAFQYVBhwYDHp6cTBrZnk0LnZibhgMMDF3d3llNGcucGZzFgAW0A8YDHp6cTBrZnk0LnZi + bhgMMDF3d3llNGcucGZzAAAAAwAAANAPAQwAAABtZGlmanQ1NS5lYTMMAAAANWRtdnFldmcuamsw + DAAAAHNmdGdtZ3N4LmIxZAwAAAB6cm9xdnM1dC5samkMAAAAYW8zamF0bmMuMXZoDAAAAHUzYmZ1 + dmRsLjF3cgwAAABqcWN3M2VyMy5sdDIMAAAAc2gxc3doZXQuYnczDAAAAGkwc3EzMDVvLmg1dQwA + AAB1NTNjZWxhMC5zZ2IMAAAAemZybTVobHEud3J1DAAAAGN6Y2Nra3QyLnJpMAwAAABxMG40NTJl + NC51bnkMAAAAanVvenVtYWEudmZ2DAAAADFtdGZvMTNtLnhlaQwAAABjd3RhZWQyci5xZHcMAAAA + M215czB5a2YuYWdqDAAAAHZlYXVpbTNtLjNhMwwAAAB1NHh1cWZxci5ubXEMAAAAbHd1aG5kbTAu + d2pmDAAAAGtqdXkycm50LnVqdAwAAABxeGNpd3JpMS5seDEMAAAAbHBlYnRqNXcuZmMwDAAAAHp0 + aWoxcWNiLml5MwwAAAAzbXdyZXpwMi5xaTAMAAAAYXoyamF3M2EuY2RmDAAAAHBjanpvdzF1Lm0w + MAwAAAAzZHlxdmg0MS5wYWMMAAAAMGFqY3lkcHMuYTRkDAAAAGI1MnJtY2htLnNoZQwAAABwczBz + ZGZzei5lcmMMAAAAZjUxdDNkaGIuanZjDAAAADV6cmhzYnpqLjF4YgwAAABqMmxtZnpzMi5xZmIM + AAAAcjBlcngxaXQuaXRyDAAAAGpiMGRzdTAxLnBlbwwAAAAzd2owZGsybi5hczIMAAAAem5iemhn + aXAuY2xxDAAAAG5xYmJwcHJ1LmZncQwAAABncDF4emYxZy4zeGQMAAAAcm95ZG9udWsuYjJqDAAA + AGVlZ2czY3FzLml0eAwAAABtNHYxd29sdC40bGgMAAAAcHV4MHp5ZGMubHZsDAAAAGRiZGZtc3Iy + LmlrNAwAAAB1cXQ1c2EzaS5hbmsMAAAANWpjaWpoMWcua2dtDAAAAHIwbm50eTRwLnFlMAwAAAA0 + eGMxcGMzai5vemYMAAAAZDN4dzNoZ2EuYWZkDAAAAHZlMHVtZnl5Lms1agwAAABhcHljZ2h1aC5h + bHIMAAAAY3l6Z2twaDQuM2ljDAAAAGJjZTJ5dmNxLmhhbQwAAABveGxhdGdudy5hdG8MAAAAdGpn + b2tzZTIudTRzDAAAAGt1MWw1NDVkLnB3ZgwAAAB1Y2VhYmxjcS5odnUMAAAAc2x3dXZjaXkucXlm + DAAAAG9seWMwcml2LmhuYgwAAAB3cmN6bXEwbC5yZ3cMAAAAc3F3aTVla3UuZnl6DAAAAHdua2Vz + Y25rLm5kbwwAAABoajRzbDVqMS5mdXkMAAAAczR4bmJoMmMudGgwDAAAADVobHZvZ2l3LndtMQwA + AABjcTBuNDVwei5mc3AMAAAAemYydndqaXIuZXVxDAAAADVqeHZkNTMwLnp2NQwAAABqc2N2b3lj + Yy5xcWcMAAAAbHNqbnp2ZmIua3J3DAAAADRwYWliaHoxLnYxcAwAAAB1cmkwMmFjMy5zYnkMAAAA + bWc1cXdiMXEudGVqDAAAAG5sYmd5b2k1LmZkZwwAAABrM3ZiMW1vby5xYWsMAAAAdmN5Z3FzcWUu + dXZiDAAAAGRobWFheWc1LnNrYQwAAAB0dW9sZ3lobS5seGQMAAAAcW1mdXJrMWcucmNnDAAAAHMy + ZmdlMDAzLmNkMQwAAABpM25sY256dy4wNGwMAAAAc2UxNHJmeWwucG1zDAAAAHR0eW9kc251LjQ1 + ZQwAAABtcmQxamJ0Zy5uZjEMAAAAeWNtcG5ldzQueTFnDAAAAHd6dmF6cHZqLmFoeAwAAAA1bXVy + NGt2ei5mZWoMAAAAM2NoYnN6dmYubXl2DAAAAHBldGsyZzVxLmxnZwwAAAA1bTU0Zmdnby5rdjUM + AAAAeXptczVvMHMuNTN6DAAAADB4NTRsZHN5LmdxdgwAAABnZWlzemdhMS53ZnIMAAAAamExY2xh + dHcuNWNpDAAAAG9ydHVzdnlwLnp1dwwAAAAyYTJueHNxbS5hdHIMAAAAeW5sNXR0eWgubTVsDAAA + AG5xY2k0bjUxLjM0dAwAAABrMjRraXpsZC50aXQMAAAAcHBwZmNwMmQuenRxDAAAAGtnbGl5ZXN0 + LmFmdgwAAAAzbGFlb25nbi5qenoMAAAAaDA1djA1YnQuc253DAAAAGVrZGp0Y3U1LjNicAwAAAA0 + dmp3eTJhei5kc3cMAAAAYzR3MjF6ZXAuYWNzDAAAAG1hZmtrdGh1LjN5dAwAAABqaDV2ZGx6eC54 + aGIMAAAAanYzZ2lhMDAuemFxDAAAAGxucjAxemRkLmh0eAwAAABtbmNkZjRudS5idnQMAAAAY3l1 + ajNjcjUuYmVhDAAAAGt2cG5kem94Lm1vbQwAAAAyZjB0c2Vuby5tNWkMAAAAcTJvbGRtbDQuZHly + DAAAAHFqMTBqY3BjLmhrdwwAAABjMXZ3bWtvYi56azUMAAAAdWRtNGFiMXMuM3FtDAAAAGtxZ2I1 + ZndsLnV6MwwAAABla21uYjBoZC55c3IMAAAAYWdqYnNrbnIuMmd5DAAAAGZwNGRqamxsLm1meQwA + AABibzVkZW1oeC5taHcMAAAAcnppZ29ldWkuYnhkDAAAAHhhZmUwaWlrLnQ1ZQwAAABybXZreHN6 + ZS5id2EMAAAAaHRxNWZndm8uaGdlDAAAAGczeXBicGprLnY0ZQwAAABtbXYwb3lieC5rM2cMAAAA + ZGhqMGIxY3kudm5tDAAAAGJoYm5kZGRjLnp1cgwAAABid2NicDQxZC55dG4MAAAAZGhoZ2d0dGku + MWhrDAAAAHFwa3J2MW40LmlvcAwAAABnMGNsdDUxbS5wYnEMAAAAbnhsbGRhYW8ua2RwDAAAADBu + cTV0Y3J3LmpldAwAAAAzNDAzbW9tai5nbGgMAAAAcG1kNHp6aGsueXJzDAAAAGYxcmMwNGp0LjFr + bAwAAAA0dXhmc2loaS5tMHUMAAAAZWx6Z2t4dmoucmplDAAAAGxrdmY1b3gyLmpqMAwAAABhejIy + NG1qci5zZ24MAAAAemYwemFwdW0udnZjDAAAAGNjZnBqMG95LjRpZgwAAABtazB4dXZ5MS5pMjEM + AAAAMjRmbjJ6eHIudGtqDAAAAG96eWZ1b3JuLjFybgwAAABhdnN3dTF2Zy5vYXMMAAAAcmNtaHhv + czMucnptDAAAAGhyajVmZ3NnLjM1MQwAAAB0eWlibmV5bC54aHQMAAAANXIzZHV6b2cuamlnDAAA + AHBuMXJ5ZWFnLmV1bAwAAAB6MmFsbXJ6ZS5tdHkMAAAAenpxMGtmeTQudmJuDAAAAHJ0cTBkZG9n + LjV1ZwwAAAB3ZXRlc2hteS5kYW0MAAAAZWc0M2tvMG8uamhnDAAAAHNxaGdhaW1wLnQ0YgwAAAB6 + cDRtdmh1Yy5xbW0MAAAAM2dnd3F3aHYuZ3MzDAAAAHd1emNxb3Z4LmZqMgwAAAAxbDFtNDFiai5n + ZHcMAAAAdnFib3FrcHQuMzJ2DAAAAGU1bTR0MmVxLnhsNAwAAABmMXhtMTN6eS5langMAAAAMXNl + cTVjaG0ub3BoDAAAAHgzYmt3Z3JyLjViYQwAAAA1MXNqeWNncy51bWgMAAAAMHNrdmJvanEueTBo + DAAAAHo0anJ5YmYwLmVvbAwAAABxaXNmbDRsci5iZXEMAAAAb2xmZ2RhYnoud3djDAAAAGFnem1o + eHV1LmN3aAwAAABiNXB4bTR2dy5yamIMAAAAbTBzb28xanYubG5xDAAAAHJ4dWJ2dmdwLnhnZgwA + AAB0MzJuM3huZS5kZWgMAAAAdWZvMG1sNWsuanphDAAAAGJqZmQ0cWNvLjRtZAwAAABkdnJmZW0y + cC51bGgMAAAAdGJ6Z2loM3YudHQ1DAAAAGlmeTJlcHVrLnNxNQwAAABmYWlsMzVieS5ycTMMAAAA + bTVlZ24yZmsuYWllDAAAADBsaGlrbHFrLm9iegwAAABsb3h0eHlvdS4wMWcMAAAAbXYzcm5lZW8u + cmljDAAAAHI0cnpyeWkyLnF3NQwAAABxcmJsMDVxei4wNWUMAAAAYXcycHJqYmEubTNhDAAAAGJo + Z3l2aXZqLmNiMwwAAABkbHhlcTVjMC5vcnYMAAAAbjN2MDRyaHAuYWV4DAAAAGQxcXZ1ZmltLnBi + dwwAAABveWVyanp2dS5wZm8MAAAAbnVheGtib3YucXB1DAAAAGtkeWRhcWlyLndjcgwAAAB3YTM0 + Y3VrMy5iZGcMAAAAZTVuMWl4anoud3JrDAAAADJycmk0MXBqLmV2cgwAAABoeHJqNHJzZS54Y20M + AAAAdzQxanFwemMueDF4DAAAAGJqbTJhdTNyLnR5eQwAAAB5eTFieDNtZS5tbHgMAAAAZ2I1MG11 + bzUudTNoDAAAAG1pd3Z3anQ0Lmo0aQwAAABxY3JpbWFoby5jbnYMAAAAdWdlc3R5dzEudXBsDAAA + AHNqczJ1NGVwLmdlMwwAAAB6NWZqc2N3Yi41NWIMAAAAaGxmeDFncXMucTRqDAAAAG0zbnduMGUy + LmhscAwAAAB2cm9iendrMS50cG0MAAAAaGFyYXF2ZGYuZDBkDAAAAG16YTR0NXNnLnV1dgwAAAAw + aGh2cGpkNS55bXAMAAAAcHByanQxbWIuZ3RzDAAAADE0dnJkemEyLnhtcwwAAAAzbWltdnF1bi5o + dTAMAAAAa2NsbGdqdGUuY2I0DAAAAHN6eGdsYWlqLjJvdAwAAABubWg0bmg1MS4xbjAMAAAAZ2Zy + b3ZieGwucWJtDAAAAGUwbnBsbndqLnlzZQwAAABkYWhodXF2Mi4zb3IMAAAAcHhuMXQzemkuYWNn + DAAAAHl0MDBodGtrLnd0dwwAAABwend4NTIzMi5ocWcMAAAAbXJ1eWx6dHQua3BiDAAAADBiaWNz + eXFvLmJxZAwAAABndnpwbnZ4cC5xbGwMAAAAM3V6bDFmaXUucmYyDAAAAG9mZGptbnN2LnVodAwA + AAAyeWhndHVzei4xa2YMAAAAMXcwYnhkY24ucHgxDAAAADFwbWx3Ymt2Lml3MwwAAAB5ampoa3Fs + bi5pdWIMAAAAMHh3MW95bG8udHdlDAAAAGtteml4cTR3LnUzcAwAAAB0djEzd3F2eS55dWIMAAAA + b2EyZzNlanQucmlmDAAAAGViZXBnanc1Lm10cQwAAAAyZnkxMzAzZy5ueXUMAAAAMGM1dXR1bWYu + M3RzDAAAAGZuY3RrY2JnLmMwYwwAAABibmtzZXdzZy53em0MAAAAeXlpajEwMW8ucGlqDAAAAHA1 + anlkbHI0Lmh2MgwAAAAzaXBjZGF3dy5hcXIMAAAAMDRtdzV6MnMudW0wDAAAAHdjdHBua2ZoLjJ1 + bQwAAAByenBxc2JzMC41dGEMAAAAdmFoeHF6MGMuMnBtDAAAAHZyMHNza29yLm4ydwwAAAB4dDUw + MHUyYi5yaGsMAAAAY3ZpeTI0ZHguY2t6DAAAAHU0c3dkb2x4LnFqZwwAAABqc2V0emMwZS5qaGUM + AAAAaGI1NGIxdGkuM3F2DAAAAGVyNXFzcHZyLnUxMAwAAABibzRpMnNmdi53MnUMAAAAbXpwdnNu + dWIua2xoDAAAAGtrMG14djBmLnNsbgwAAABjemJlbGVqZy5xaXEMAAAANXhob2txNTQuY29qDAAA + AHVyaWhzbjR5LmVreAwAAAB2dGFtaWl2MC5sd2IMAAAAbHhhc3g1eTQuejMyDAAAAG12dnJ2czFu + LmRodQwAAAB5ejJxa2h3ZC50ZGUMAAAAeGwyYWd6dHYuMXNmDAAAAHZnNGNybm0yLjNjYgwAAABr + NTVmNWtwcS55cWIMAAAAa2RlbGI0bWkucWNtDAAAADN4NWxldGk0LmtkYgwAAABqd3FnYnVtYi5p + cnQMAAAAaGVkbHlpNXQud3FsDAAAAGZ0ZXRzM2tvLmhtbAwAAAByZ2MzdjN5cC4xY3AMAAAAZ3Bo + MzNqcGwudHoxDAAAADR1eDNzd2l5LjNhMgwAAABuY211d3V1MS41ZjAMAAAAaGhrYjBrdzAueWky + DAAAAHZobG1ha3VwLmhzaQwAAAAyd3dkdXFzdy50dzEMAAAAamJmZ3FxeDUudHoyDAAAAG80dWk0 + a2RyLnAybQwAAAB4aWd3ZHBxZS4zencMAAAAamIwemtsbDEuMmFoDAAAADB3eHBpZWlpLmVndAwA + AABuNDNudG81NS5ueWYMAAAAeW1ocjFxeDUuMW9yDAAAAGY0bGZ3b3hpLm50ZgwAAABuemZyYmJ2 + eC5weXkMAAAAeWhyNXZvaXouMnVvDAAAADN5NXAyZXp3Lm55YwwAAABuNXFnYWgxbS5vM28MAAAA + cDNzMWUwMWQua2pnDAAAAGVxZDFoa2NhLnkzbgwAAAB2YTN1Y251ay4yMXAMAAAAYWVrYTE1Z3Eu + cXFkDAAAAGNwdDNvNGZhLnhzdwwAAABsMXMyZ3Fhay52cWQMAAAAanJvM2hzcDMuMmYzDAAAAGJz + Z2FhdTBvLnBvawwAAABybHgxZGVoaC56eHoMAAAAdmZlNGlibmMuYjJyDAAAAG5paTFtc3YzLnBz + dQwAAAA1cWtkbnR5ci5xa3QMAAAAa2Yxa3Yxb3kuaGsyDAAAAHh1bmd3dWlqLnViMwwAAAB2Ymx3 + MndldC5rcm0MAAAAanFkZ29tNWEudmMxDAAAAHk1amtjbG4zLmxwNQwAAABqcW1xeWVkdy5naWEM + AAAAMW9qYjIwaWEudnRqDAAAAHRmaXZkdjIxLmF4MAwAAABwaWQwaHpwcy5kdjUMAAAAd2ZnY2Rx + NGYueG8yDAAAAGNicDA1eG0yLnM1MAwAAABhMjAxYXBodi4wZjQMAAAAZGwxMnl6bXIuZWJmDAAA + AHgwZXZ5dHFyLmEydwwAAABnZm91NHlrMS55NXQMAAAAdzJqZHZsMmIuZmJ3DAAAADJ4a3c0eHhy + LnVpawwAAABneHFsaWdsMi5scHMMAAAAanN5dXl1emguZGhyDAAAAGRkem5lMGpnLmV2NAwAAAB6 + d3pkdXBjcy5mMWMMAAAAbHZzYWFsYzEubWxqDAAAAHhheDBhZTVlLnpjeAwAAAByZmRncm4xZS5y + ZHYMAAAAc201MnV4bm0uYjMwDAAAADF2cWt5NWZhLm54ZwwAAAB5Y3lreGVnYy4zYmwMAAAAajNq + MnV5ZGIuZ3JmDAAAAGh6aHozNG1mLnB6NAwAAABhMHJzaWUxci5pcTUMAAAAMGp1cmoyMWkuNDAz + DAAAADAyM3c0YnJ4LjNzMAwAAAA0em95YjRzdy4zbXMMAAAAcGlvMnM1MHAueGprDAAAAHBpYWpi + bXpyLmgzcgwAAAA1ZDMxeW5ndS54a3IMAAAAZ2dlMGMwdWEucmswDAAAAGpvZHIxbHVjLmk0cAwA + AAAxcmNrZDN5NC5pbWoMAAAAeGxhbXhwZ3YuMWp0DAAAADJlMGszMWJwLm4xdAwAAAB1MW1sazF3 + NC52bjIMAAAAa3Y1YWhldmoudjBuDAAAAGMwdDVyMm9jLnI1cAwAAAB4d20wdGt2bS5xbHkMAAAA + dWpqcW9pM3IuamoyDAAAAG5sdHl0amd4LjN3YQwAAABoZmF4Mnhydi5yc3YMAAAAdmdyYnlxdXYu + cXQ0DAAAADFqc3d4YWh3Lnk1awwAAAAza3Ftb3d3di5ia24MAAAAZDFocWk1dmMuY20yDAAAADFx + MGRseGNpLmhjcgwAAABkemJsazRyai52ZHYMAAAAZ3loeDBwNXQuZGlzDAAAAGNsaWY1b3h2LnQw + bgwAAABwYm52dzJ2Yy5oMDUMAAAAaWUxajNldXoudmMyDAAAAGNqcnNjaWp3LmJzcAwAAAAxcGxt + bjN3ai5kZzIMAAAAd3BxeW15cWMuZXBvDAAAADNteGpyYTBhLjVudAwAAABhcGxhZTVocS5ibG0M + AAAAc3VjajQwcG8uMzRjDAAAAHpiY2twcDQzLjV1agwAAABhbG5sYjRlNS5ibnkMAAAAYWl3amdz + cWUuZW1mDAAAAGswbzFsbTUwLmNxYwwAAAA0cm1tbDVlYi5xZXAMAAAAYXBpbWdvdGYueXE0DAAA + AGF6b3Jwd2QwLmR3NQwAAAB5M2x0ZGkzYi5xZXMMAAAANHhvbHRmcDAuZDV0DAAAAGhocDI1d2Fp + LnFxMAwAAAB4Y21obGJ6NS5paXIMAAAAbnpqd3p6MGYudmprDAAAAHhyMTFmNHVuLjJidQwAAAB3 + ZGhqeHBuei5neG0MAAAAMnh5bGlsM2wuazF4DAAAAHZzMXZqd2cxLmdqMgwAAABrMHRzbjRmaC5v + a2wMAAAAZDFqb2N6MmQuaHljDAAAAHF2MmpucTVzLmx5ZAwAAABxZHpwNWRyby4xcXcMAAAAa2Zh + YmkzdHYuaXRmDAAAAHB5NG9xeWRiLjJ6MgwAAAAyNGV0dGMwdS53MGgMAAAAZGZkNDN6dHcubWly + DAAAAGF6Zno1eWk0Lm8zagwAAAAzdDV1d2Ruby5tdHoMAAAAb3lsZjF4aHguZ2RqDAAAADR5bnAw + dmFuLnpidQwAAAA1enF4bXZqcC4yNTUMAAAANXFnc3F0Y2QuMmpkDAAAADRuMm5kMGlvLm53ZAwA + AAAxMm1qNWlrdy4yY3MMAAAAY3ZvZnd1dmwucXhnDAAAADBobHU1ZnJ1LmRjcwwAAAB4NGpoNXBk + ci51bzUMAAAAcWRxNHdib24ucWFyDAAAAGhvMHBhbHF4LnNocgwAAABhMmJ0bWJ5YS5xZ2UMAAAA + bGk1b3NwamouMGxsDAAAAHpldGgyMTFkLjBoYwwAAABsY2Y0NXkybi52bjQMAAAAZXpvemI0M2su + YTR6DAAAAHR1ZHVoanlyLmdnbwwAAABuZHBqaXJneC5rbHUMAAAAMnBsbXVrdHIuYnB4DAAAAGhm + eGxnb3RjLmcxYwwAAAB2cGtiMTF5Zy5pMHEMAAAAcW4ybmpvMTMuZ21sDAAAAHJpY2o0eGs1LnBq + bQwAAABqZ2RuMmN5Zi4zYW4MAAAAZDB3aGk0djEuY2wwDAAAAHAxbGdncnVzLnB5bAwAAABqb3R3 + cW95ei5jZjUMAAAAM3p1cnZ3Y2oueWZnDAAAAGkxcGFkdnVuLm96bgwAAABhdGhucnJ6di5pdG8M + AAAAc2Nmc21zZzQuc2lsDAAAAGdxZGp0MXNtLnZ4bAwAAAAzMG1iaDNraS5rYm8MAAAAZzRoZnNo + YWwuY2JpDAAAAHZlbmptanFtLnRmegwAAABhNTVpdnQ0My5zcWoMAAAAbGY1cG14YXguYWJ6DAAA + AGdtb3cwcmI0Lm13egwAAAByM3Nlemh6ai5xZzIMAAAAMGN2NHh6dzUuaXU1DAAAAHlzMjMzZm52 + LmNscAwAAABzaDJuZ2Fvdi5lY3QMAAAAbXFudG4ybXEuend2DAAAAG8ydHFzM2NuLjBxcgwAAABy + cnF5ZWt6di5pcnQMAAAAcDVxMXkzdmQucDV5DAAAAGUzYzVtY29qLmExcAwAAABtNXNxd2Nkai5v + bHkMAAAAeW1uaG40bGguZ2lpDAAAAGZ0ZmJrbXlyLmoxMgwAAABoc3ozcWdoNC53MTMMAAAAZWN0 + Zm9paHMuenV1DAAAADVsbHl5b2dhLmp0cgwAAAB2cmd5Mnl0eC5kMzMMAAAANXA1YW1ja2wuam1s + DAAAAGdrZXpkZmNzLjAwdQwAAAB0MzF2eHViaS55cmIMAAAAZzJ1MzJrenQudGllDAAAAGEzdG9n + ZnBjLjJ4MAwAAABrYzM1cDF2bC4wMXYMAAAAaml0MW9zNXcuanVjDAAAAGVia3h2bXExLjJ0aQwA + AABqYnd6cXVvbC54cDAMAAAAaHJrM2JwaHYuaW5qDAAAAHkweWNjbTQxLnQxbAwAAAB3aW55a2Ft + Zy5rMjMMAAAAaGtpamsxNTMuZTRwDAAAAGd4ZHprY3phLm1zbgwAAAAzaWtwa2tteC5xZjIMAAAA + YnRoc2dnNXQubnl4DAAAAG50M21pdGJ0LmowNQwAAABwamdpNTBuMC41cWYMAAAAM25uZGNobWcu + eXZrDAAAADRhaXdwMWVhLjI1dAwAAABobXhjMmxqcC5ja3cMAAAAd2lveTF5bmIuZ3gxDAAAAGdj + dDNqbzEzLjJwMwwAAAB0cTB1MnZwbS4wdDMMAAAAb21ncW53dzEueTUxDAAAADIzcmVlbjI0Lngz + MgwAAAB6amVheWVzZy56dWsMAAAAZ2trd2x4MGYubnNvDAAAAHpzdWl2em1jLnRmMwwAAABvMmt4 + bXBicS50bXEMAAAAdHBhbzNsMmgucG9zDAAAADBmbXozdHNxLndzcQwAAAA0dDIxaDB0Yi56dDIM + AAAAZXp1anB2ZXkuaWs1DAAAAHNoY2RzeW9nLmRlMwwAAABpdmt3ZWxteC5kaHoMAAAAc2JvNHRj + eXcuNHV3DAAAAHJzbnpkbWExLmFlcwwAAABjYXd3YW5pbi5nYncMAAAAajJvNXdkcncuZ3VrDAAA + AGF5MHVodG9mLnN5ZQwAAAAwYnQ0d2l6bi4yaWwMAAAAeHFtamtvNTUueGZwDAAAADVvdnlydHpt + LmQxawwAAABsY3VoaDR3cC5ldzMMAAAAYWJ6cGhhMTEuM2tkDAAAAHZ2MWVkcnI0Lm1rcAwAAAB1 + aXEwajFrei5yNXcMAAAAeHFydWd2NG8uYWpkDAAAAHo0a3hibjVmLmJjcAwAAAB5ZGVzcGpjZy5p + ajUMAAAAb25yMHJvZGsubGN6DAAAAGoxd2Z3eGVhLnMyNAwAAAB0cDRtNXR0dC53bXgMAAAAcGpk + Y3Bzd3MuYWoyDAAAAGtrcXgza25qLmh2ZgwAAABwdHJubm5jeC41ZW8MAAAAc2I1MTJ5YmouM3Jj + DAAAAHExenBoamN2LmNpaQwAAABwdGNka2ZxYy55M2MMAAAAZGl5bmJjc2gueHR1DAAAAG8yYTFi + ZjVoLmJlMAwAAABwMDBhc2psci5rengMAAAAM3hwYnRmYXMub2R5DAAAAHNwZmZ3bHhwLjRtcQwA + AABjZGMxd25iay5sbWgMAAAAYjBvbm5ueTQueHkxDAAAAGJ0cXdrNWpmLnhjYgwAAABncTR4c3dx + dC54ZjIMAAAAeHNheHVzbmsua2pzDAAAAG9pYzE0azI1LnducwwAAABsdnpvdzRpMy5jNHYMAAAA + ankzbWtueGUuajJ0DAAAAGxnNXI1ZnFnLmJwNAwAAAAxZWFqZ2JsaS5tcGQMAAAAbzBydHh1Ymcu + MWdnDAAAAG1panliYXlrLjRtNAwAAAAxNW9wZjIydC56aW0MAAAAMGJlaDRta2QueWVrDAAAAHVj + c2pka3FxLmJpbAwAAABwbjRndzJwZC5nZXMMAAAAem92ajRqYjUuMXVhDAAAAGMyMjN6Y3JsLmlj + cgwAAABiamp0NWRhNC5heDMMAAAAMnl6a3Fvc3kuZ3Z5DAAAAGJrNGVwa2hrLnVhdQwAAABzbG40 + cmZxYS5jMnAMAAAAdnB4aXh1dnEuMmR0DAAAAGtpdDJndzFhLmMzdAwAAAB3ZWowcGhmbi4xa2sM + AAAAdHh1aGhxcGUuNDEwDAAAAHhzeHR3NGgyLmZjdwwAAAAzZm4ycmR0NC5qZmMMAAAAYmdpMnN0 + YTEuams1DAAAAGlxbmRvamJqLnA1YgwAAAB1cG4zYnh5bS53NTAMAAAAbmdkdDBybnIueGtzDAAA + AGN2M25tMjJlLmN3MQwAAABqZmZqeWE0bC41aWoMAAAAcmJhbXB0NGkub3JrDAAAAHdveTFvZ3N0 + LmIyMAwAAABicHcyNHN6dy50am0MAAAAd3pmams0bDIuc2l0DAAAAHYxcXRtZzFlLnV0cwwAAABy + ajJjcWRycC5taDQMAAAAMGU0dWRxd3cucG9qDAAAAG5lazV6c25yLjB0MAwAAAA1am9zZG5oZi5n + dmYMAAAAbXd6aXA0MWkuaTQ1DAAAAGlqZmsxc2l0LjR3eQwAAAAxbXZ1eDFzcS55cHEMAAAAZnpi + Z2JocDUueW1xDAAAAHVpMTFkenFuLnR0bAwAAABqMTBiMDNsaS54NGMMAAAAMXJ4MHFuaXQueW96 + DAAAADJzc2puMWF2LnptbAwAAAA0bWMxMzR4dy5yNGcMAAAAaXRlaTVxa3oudXZiDAAAAHIxMWlk + ZW5sLjBycwwAAABzaWoxMDU1eC50eGsMAAAAamIxMTJkYnQuY3Z2DAAAAGIwd2tncGFuLm5xawwA + AAAzNXBlamIzZC5mZDUMAAAAMm5oeHB4MmQudDNlDAAAADFkbnhrbzRxLmRhdgwAAABhdzB5cWZw + by4xbTIMAAAAb2U1MnN0cXguMnJsDAAAAHBubGhjd2t6Lmt4MwwAAAB4bGdvNHgxdy5odXUMAAAA + bzRrNHJvNW0uMmdiDAAAAGF1azJ3dHhnLmVmMAwAAAB3ZzBkYWwzZy50bXIMAAAAa2p4MGVyb2Eu + cGYwDAAAADJnNHlwdHVlLjMzegwAAABoMjNpeXJlZS5qaWoMAAAAaGR0dzNsZWouaHdyDAAAAG5z + Y3JjdXkyLjFkbgwAAABrY2ZudjJzcS5qMGUMAAAAMjJxMHB3MmwuNWZsDAAAAHhoZWd5d3Z6Lncx + YwwAAAByMnhzaTVtaC5wbzEMAAAAcHp2dTV5bXYudXh3DAAAADVxZGRrYmJiLnFnbgwAAAAzZnM0 + ZDBnMS5qeHcMAAAAZW9meW9ueDUudHpoDAAAAHd2djRwcW0xLmV4dAwAAABweXZudXJ0ZC4zZGMM + AAAAaXhlNGF0czQudHEzDAAAADFycjMxNGcyLmQyeQwAAAA1YmRzeTR1cy4yMmQMAAAAamxiMGJ0 + enIubGt3DAAAADR1MGhiYWQzLnhyNQwAAAB2dmdrbDJjby4yeXQMAAAAa2c1anNqNXIubG96DAAA + AGkyaDNoZ3NhLnhkMwwAAABudnVkMTNicC5iNTQMAAAAYnAza21yd3AuNHUzDAAAAHd3MGFzc3l4 + Lmp6MQwAAABvaGJ1dXNwdS5ha3cMAAAAcmNpNHpxemQuNHNmDAAAAGZ1b2pmcTQwLmZ5dAwAAABt + YXBiazJpdS5jNHEMAAAAanUxdm8wbG8ubHF5DAAAAG1hMHNxZXRqLnF4cgwAAABxbnd1dGx6YS5n + eXkMAAAAamtybnJkdTMucW5vDAAAAGF2NHNsZ3cyLm5qNQwAAAB4a2xpamN2ai4zcjEMAAAAc3cx + YnZyMHIucWN3DAAAAHZydnI0amFwLnJkMwwAAAAzM2pqYXBhcS5xbGMMAAAAczFwZ3psaHgueXRw + DAAAAHBseDN3aWh0Lnp5bwwAAABwY2llMGp5Zi4ydGEMAAAAd3NocmV0dGYubzAyDAAAAHNyZXZ3 + eGN4LmY0dwwAAAAyZjNleW4yeC5nc2MMAAAAZXF3MGFsZnUud2JrDAAAADBpdDFtZnhzLmpxMAwA + AABpbHl4dXR4ei5tNXoMAAAANHJobG9pcjAuaTAzDAAAADJ2b2NmZzNtLnhycwwAAABkd295eWll + aC5wZWMMAAAANWIycGk0NWEuZGk1DAAAAHlkbWRrMWJwLmtlaQwAAABqaWRjNW5paC41enEMAAAA + MDJnYjJ6aXQuM3VtDAAAAHE1ZmFjM2p6LnczaQwAAABnZmswc2JjMy5wYWsMAAAAd3Nnd3B0d2Iu + bG8xDAAAAGRtd3FycXpvLmthdQwAAAB5ZWVrbGp3YS5oZWwMAAAAdHpoNHN2dTIuaHp6DAAAAHBj + bXhrMWZuLjRseQwAAABjMWt1M3p2bS5hMXAMAAAAa2owMDExNWUudXZnDAAAAGJuNHN5cWdrLjBj + MgwAAAAyb21sNWJ2NS4zdGsMAAAAdzB5eHBjd3cubWwwDAAAAGQxZmNqYmsxLnFseAwAAAAzcmhv + M3Rkdy51MnoMAAAAb2FrdGoyZGMuZjVuDAAAAHoyaTF4MTIxLmY0eQwAAABra2lldXZ0NC5zY3gM + AAAAeHJweXVia3kub2NwDAAAADVieXR0Z29oLmRtMgwAAABkYXYzYmpvdi5waTIMAAAAb3NoaWh4 + ZG8ueTFwDAAAAG0wYnJramU0LngwagwAAAB4ZHU1ZXg0cS5memUMAAAAeGVnNDBib2QudWp3DAAA + AHBnMXYzczJiLjN0egwAAABuc2FqdWY0ci52dGcMAAAAY3FrdWtzbHIuMjJwDAAAAGZ2dmh3aWs0 + LjF0NAwAAABkanRudmJwdC5seHQMAAAAa3Nkdm1wMzEuenNzDAAAAGF3cHczZGpiLjBnZAwAAABw + b21kYzF0cS52amgMAAAAZHJqZm9pbnUuejQzDAAAAGYyc2NpaHI0LjJubQwAAABweWR1bGNpYi56 + YzQMAAAAMDF3d3llNGcucGZzDAAAAGNxd2ZnaG11LnYydwwAAAB5anphNGJrbC5ocWcMAAAAbG5q + MmpyNW0udGJtDAAAAHl2MG9tcWl6LngxdAwAAABzYXNueWEyZC40d28MAAAAem5iejRoYmQubHoz + DAAAAHZ6MzFuYXNzLjM1cgwAAAAxc2I0bnlsZy5yejMMAAAAYTQzemVkaW4uMXYyDAAAAGV5YTUw + cnZmLmg1YQwAAABkMXV4YnFkMy53bjQMAAAAMHRsNTU0bWYuZnMxDAAAAHlmendwNHlxLnp5bAwA + AAAwYXNiZHJuci5yYXcMAAAAbjNqeXZrdnAuZ3doDAAAAHJja3A1c2ljLm1mawwAAABrZWVmcG1n + Yy50dGcMAAAAcXAwZXlrdDMucTRxDAAAAHowc3UwZ3c0LmxwaAwAAABkNWZ4cXpldS5ua2kMAAAA + bTVraGpscHcuZzMxDAAAAHRjMGtqeXF1LnV5ZQwAAABhaG5ncmlvdS56bWUMAAAAaGVxa2R1bHUu + dHE0DAAAAHlwZHZ3MXRtLnN0dQwAAAB2ZHc0NG4yMC5lcHkMAAAAbGN6aTQ1MnAuaWEyDAAAAGEw + cmY1azRwLnQwcwwAAABhcWg0YWc0bC5uZ2MMAAAAZWNwdWE1cWkubWd0DAAAADV3b25lcTUyLnJn + dwwAAAB3NW9rNWp2ZS5xbHcMAAAAMnpjcWJrZmEubGVvDAAAAGR1eXpvNXVlLjNuYwwAAABqNG9n + MnlzdS5sd2kMAAAAZGttcWp6ZTMuYjQyDAAAAGVmZ2FvcmRxLnhyeQwAAAA0bzNhY3B0ZC41c3EM + AAAAa2J5cHJpMm8ubGJnDAAAAGtxZ253ZXJ4LnB3dwwAAAB6dXRnenA1bi52enUMAAAAZHZycHZ5 + M3EuejJzDAAAAHNidjFqcGh3LmdyYwwAAAB6ZDFoaDFsdy5wZGwMAAAAYW1veWtvZGkuNW9nDAAA + AG1uMWkzYjMzLmF5YQwAAAB2cHllbGFvci52M3IMAAAAeWpibmgwcGouMzF2DAAAADMwcndocHBs + Lmt1NQwAAABrdWJwcWxvYi53MXkMAAAAazNsZm9pbWEudGtmDAAAADNleGlsbXB2Lmp6aQwAAABs + YWF1bW1nby51em0MAAAAMHIwcTV0bHkud2ZwDAAAADN4YTBxZ2x5LmljcgwAAAA1NHBhMnBtdy5y + amkMAAAAYW9nZWs1dzEudzMzDAAAADNvZ2t3cWVvLmhpaQwAAABpZmxlaTFuMS5idGsMAAAAYmxk + d2R0b3Uudmk0DAAAAGFiMXNhdGo0Lm1xdQwAAABkd2ViZGwwbC5tcjIMAAAAYTRxZG94ZWsuajMx + DAAAAGszMHA1c2NuLnRsMwwAAAB1MHoxMHloby5pbXcMAAAAY3lrampkMWMuNGd5DAAAADVqM2wx + MHEwLnlmcgwAAABhdXF6cmp1aC5ld2QMAAAAemdubGx6bnUuc3FvDAAAAGI1ZjNmcWRpLjB5NQwA + AABzeWpobG9pby41YnMMAAAAcDVucm4weHkuMmkwDAAAAHVkeGxjdmdtLmpnagwAAAAzZmMwZXdi + bS5lYXUMAAAAejFkMHVvdDAudnNqDAAAADIzeTNzZnFjLmZnZAwAAABxMnRmYjB2ay5uMmQMAAAA + a2xieXcwczUuZ2ozDAAAADN0bWhjaHExLjFxdQwAAABjZXU1M2o1dy5rcXYMAAAAbWRjcGVld2Iu + NXhxDAAAAHl6MmFpd3k1Lm9scAwAAABidHZycTFiZy5jeXIMAAAAeXlhbGJ1Y3MuYW5nDAAAAHAz + eHRvcDFpLnFlZwwAAAB3ZXdrM2dmZC5uaW0MAAAAZm1qb2d4b2cuNTU0DAAAAGVydTJsbmowLnN1 + dAwAAAB6bG5xa3hnYS53MHIMAAAAZXgxeDB1MXUuYnpuDAAAAHZmeGJidWFkLm5tNQwAAABidmo1 + eWxwZC53ZnYMAAAAZW5rY3FzNTUudGx0DAAAAHdsZzBxcWh2LnNyZwwAAABvZWVrcjJ0eC51aXkM + AAAAdmh0aTB3cXAudWYxDAAAADV0cXh0enYzLnk0cgwAAAB4ZXdlbGRrdi56YXEMAAAAamJ4YzB3 + dWkuMWlkDAAAAG9rdXB6MnN2LmhmaAwAAAB1MWJ5eDFlbi5taXIMAAAAaGhwejQyeHQuZ3F4DAAA + ADBxbDMzZXk0LmMwagwAAAA1bTVsbjVsbi4wdTIMAAAAcnN0a2JxdWwudWQyDAAAAG94MDQ1azFv + LmdtbwwAAAB0dWRrcW0wdS50dmwMAAAAY2ZjMWlvam8uNGluDAAAAGozcGM1c20wLm1sYwwAAABp + c2Q0MGpzdC50ZmcMAAAAazM0ZHdjd2IuejNtDAAAAHZleDV1c2RvLm1nYQwAAAB5ZWpnb2d4by55 + bnAMAAAAdjRvbjB1bGwucHlmDAAAAHB3MmUwbHpzLjVnawwAAAB2enEzMW94Yi50djMMAAAAeHFz + MGthZ3QueTV4DAAAAGhyYmlrNGllLnNndgwAAABjZWtsNDBzaS5ycnkMAAAAMDV0Y3h0MmwucXo1 + DAAAAHF4bHZnczFiLnVjbAwAAABnMndsNDBrMS5qeTIMAAAAdWExcnIxZGwudWVlDAAAAHFzdWdu + eXZmLnhycQwAAAB6bXoxd3V0dC40bzAMAAAAYTJuajNxZ3kuajR6DAAAADUxeW01YmhxLmVybAwA + AABpMXJsMnBlYi5odmoMAAAAcWJyanptcnUubWZqDAAAAHljNWdrZ3lsLm1wdAwAAABkZDV3dGh5 + aS5xeGcMAAAAa3dlZHV2cG4uZnRhDAAAAGFqZDNkdjBoLmtqYwwAAABocGdudG5qaC56dHIMAAAA + eDRmYWF5b24uemd6DAAAAGRleDR4YjVsLnJtbQwAAAA1NWZvcXJybC4ybXUMAAAAd2lrdXB4b2ou + c2V1DAAAAHVkYWxnenR0LmMzbwwAAAA0czJ6aG15cC4waTEMAAAAMHB4MWRpY2wucWd3DAAAAHVx + YTF4bGRxLnQydgwAAAB1MXF1aHRzdi5xdXUMAAAAMnMycmJmdm8uanZpDAAAAGQ0bDQwbGJxLjUw + ZgwAAAB4YTNsajR3Yi5udHYMAAAAam9jZnc1dmQubG5tDAAAAHowYmNsa2R1LmNwawwAAAB3MGpv + Z3BzMS5hNXUMAAAAMDM0bDBvaDEuNWh2DAAAADNzY3Vzd2JzLnl3aQwAAABidXp6MmpuMi52MzUM + AAAAa2V0c2IyeHQuaXgzDAAAAG01a3RycmtsLmJmNQwAAABkeXVqMXRydC5rdXgMAAAAYzExcG9l + MDMuaHJjDAAAAGJvd2lyZDQzLmI0YgwAAAB6M2E1eDR6dS41em8MAAAANWw1MWswdGsueGRsDAAA + AGZzNXgyYWxuLmpkZwwAAABpcno1aHAxcC54dzEMAAAANDRobGZsdjQub2lpDAAAAHVzMzMyMDJy + Lm1tbQwAAAAwZGV2aGIwMC5lbm8MAAAAeWdva2FscHQubXpuDAAAAGx5ZmNscmh3LnJ0NAwAAABk + a3hrY2l1ai4zZnAMAAAAemtkbHNwcjEuaHQyDAAAAGE0aDNvMmFyLnBzNQwAAABxd2YwM2lxZC5o + ZmUMAAAAanl0cHZ2YWEudWYwDAAAAGFvdno1ZjRhLmlhMAwAAABjdjFlMnhvdS4xbngMAAAAbGFs + bzVncmoueWV6DAAAAHgzanRjbzRjLjJsaAwAAABycDR0c3ZibS5oa2kMAAAAeTB2MjM1eG4uMG5m + DAAAAG56eDR2MXBpLmNlMAwAAABocWFleXd2by5zazAMAAAAcXMwYmRudjEuNDVjDAAAAGhpM3p5 + cjFsLmlidgwAAAB6YzJoM28xdy5iMnUMAAAAZ2F5eXo1dDUuNWNlDAAAAGZhZXEwdTNrLmZndQwA + AABtcmZwZ3FzdS5ldm4MAAAAY2hlbTRsb3kuZnMyDAAAAGlyc2xnb2hkLjVibgwAAAB2YWR0YXNs + aC5oeGIMAAAAZnhpMmwyeXAuNGdhDAAAAGd1aHFibjExLnVyagwAAABmcTJ5bmZiMS5tb3IMAAAA + Zm50aWR4dHEudDJjDAAAAHNxenZhcnQ1LnlmZgwAAABnbDEyZ2ZxMy5nZWYMAAAAcWNtYmpha2cu + cGc0DAAAAG4wanFyaDNjLnBtdQwAAABpNGdmdmN0Zy5sa3gMAAAAeW1vNXlsengudmt3DAAAAHZ1 + bWFocGV0LmVqMAwAAABza254ZXVhby41eG0MAAAAdHF5bmFoaGcudW8zDAAAAG4zMm00aGVkLnRt + cgwAAAAwcHVpbjRwdy54NHAMAAAAbGgxZTBjM3QuamNlDAAAADBjeXBuZGVwLjNrdwwAAABrdWg0 + NGp3aC53c3IMAAAAb3UzNDFwd2sud2lxDAAAAHBobWZtZ3dkLmlicAwAAABhc2szdXNzcy56YjUM + AAAAaHgwYzFnZmIudXQzDAAAAGFxaWloMGxlLnYyawwAAABleHVlaWVmZi5sc3gMAAAAa2pmMG9u + bmIueTNiDAAAADJ5dG1vZHpwLnMyZQwAAAB3NHczZjUyai5vaGEMAAAAajJuamJtZHEuMTRhDAAA + AG1xenExcGptLnM1NAwAAAA1ZjBvb2h4My4xamsMAAAAaWJxcjUwanAudmVnDAAAADFsM3phZ3F4 + Lm80cQwAAABueGN4MzBpbS4wdDAMAAAAb3ZkYmVnZGcuMWRmDAAAADR3MTJncHAzLmRycwwAAABx + MnlkYjJtci4xNGQMAAAANWZyZHJqNG4udmduDAAAAGtua3B5MGtvLjFucAwAAAA0aW54a3YzZC54 + eWgMAAAAYm1ucnBscWcuMHdxDAAAAHh5Z2U0ZDM0LjQ1eQwAAAAzbGN1aGZpcS4yYWYMAAAAeGtp + NXYxMGguZHkzDAAAADA0bWJzeWJzLnAzdQwAAAAzZXlpYjNqMi5sZ2sMAAAAeHlxZXE1ejMubTRh + DAAAAGtqcG9ud3hqLnNjYwwAAAA1a3EyYm0wby52azEMAAAAcnNjc21uNWkudzFuDAAAAHptNWtp + Y3JyLjV4ZgwAAAB3dGVvdHcxci54dW0MAAAAcXZkMDIzemguYmNwDAAAAHlranlrY3F4LnJqMAwA + AABqZHQxYnV0Zy41d2UMAAAAbW53ZjJnbXUuM3hxDAAAAG1nb2VrdTNhLnl3ZAwAAAA0bnAwdGdo + NS5ybWoMAAAANHF2c3JndnIudnBqDAAAAHhjZGN6cnl4LmZhcgwAAAA0azEwdnV6by56d3cMAAAA + b3NhZHYyeWouc2RnDAAAAGx4c2VsYXF2LjJjYwwAAAB2dGkyMDE0di4zY3YMAAAAaGNhMGx3cjMu + eGp0DAAAAGJqbnIxMHN6LnM1eQwAAABzcjVvZ25jNS5ocHMMAAAAYTJqaHRxeWIuczVjDAAAAGtm + ZG92aXptLmljdwwAAABvZDMzNDVvMS41MXoMAAAAY2VzM24zdjIudm53DAAAAHZycDBncG1mLnky + YQwAAAB2MDFmYWJsYi41djUMAAAAanIwZnRoYWYuNWJ1DAAAAG4xdnYxdHN1LjFpbAwAAABnZjFi + aDV6by5iNWkMAAAAY25sNHhpM3Uuc2NkDAAAAHMxaGpub2t0Lmx3agwAAABqbmE1em0wYy5hb3gM + AAAAY2phenp1bXguNXE0DAAAADVvaW81bWN4LnoxMQwAAABrbm41cW1ueS5kbDAMAAAAbTNkd3Jx + MmEuMnJ2DAAAAGJ3YmlmM20zLm94YgwAAAB0aXdpb3VsaS4yMmMMAAAAMXU1cjFuYXoueWhjDAAA + AG52MGgxNHRzLnBpeQwAAAB3cnNzY2htcy5obWEMAAAANXF4MG81MmIuZnlwDAAAAGJuNHJ6aXNy + LjV5cwwAAAB1cmZvMmJxYi51Y3cMAAAAc3ZlZ3Rpb2UuaWNzDAAAAGZ6aWpmcGpsLmMwagwAAABn + M3lwdTJobS5qanQMAAAAd2llaG1mejIuMTJkDAAAAGQ1eXViM3NuLmRoagwAAAAyZnZ3eGlsdi5p + d2gMAAAAdTV4NWtwMXguenJlDAAAADEyc3Q0MDVnLmJ4dQwAAABucWZtMWJvZS51ZG4MAAAAdGxh + czJ6Z2QuZWswDAAAAG0xdmhyMWl6LnhucgwAAAB6cHpuNHczeC5uM20MAAAAYnNqbDBudmkuaW5o + DAAAADJ0amlwd2J6LjR5NQwAAABnZ3BrZGxvdy5vd2QMAAAAZHpoM2NmYXguNWZmDAAAAGlnM2x0 + ZWdkLjVpNQwAAAA1eTBnZWszdS5pMm4MAAAAa2JiZGEza3MubWl0DAAAAG1mbzF0amV4LjR5bAwA + AABlNXFpNXppYS5sMXgMAAAAeTRjNHZsM3EuMnF6DAAAAGRhZHhtMjN4Lmx4cQwAAAB6amlqZGV2 + cS55bmEMAAAAM290ZXByancubW93DAAAAGQ1NXA0b3BjLng1aAwAAAB4bGE0NGYxaS5jbmIMAAAA + NTFiNWZndXkuaDB4DAAAAGdsb2RnM2lmLmlyMwwAAAAwZGR2anNhZS5vdWYMAAAAZG5qd25lcnYu + ZGZ4DAAAADRoYXA1c3ZsLmowMQwAAAB2a3JsbHFndS5zemcMAAAAMTEyYnFwcWYuaWMzDAAAAGtw + NHhyeWdmLm9tawwAAAB1dWx6bmFwdS4yaGQMAAAAb2V6cmgwc2kuajJ4DAAAAHNudnF3aGkxLml3 + aAwAAAB6aWZsa24zcC5sMGoMAAAANGJ5ZnhkMDUucGJxDAAAAGRsc2Fpb2FzLmhzMwwAAAAweGZh + dDNxei5vYWkVABWO+gEVjvoBLBXQDxUAFQYVBhwYDHp6cTBrZnk0LnZibhgMMDF3d3llNGcucGZz + FgAW0A8YDHp6cTBrZnk0LnZibhgMMDF3d3llNGcucGZzAAAAAwAAANAPAQwAAABtZGlmanQ1NS5l + YTMMAAAANWRtdnFldmcuamswDAAAAHNmdGdtZ3N4LmIxZAwAAAB6cm9xdnM1dC5samkMAAAAYW8z + amF0bmMuMXZoDAAAAHUzYmZ1dmRsLjF3cgwAAABqcWN3M2VyMy5sdDIMAAAAc2gxc3doZXQuYncz + DAAAAGkwc3EzMDVvLmg1dQwAAAB1NTNjZWxhMC5zZ2IMAAAAemZybTVobHEud3J1DAAAAGN6Y2Nr + a3QyLnJpMAwAAABxMG40NTJlNC51bnkMAAAAanVvenVtYWEudmZ2DAAAADFtdGZvMTNtLnhlaQwA + AABjd3RhZWQyci5xZHcMAAAAM215czB5a2YuYWdqDAAAAHZlYXVpbTNtLjNhMwwAAAB1NHh1cWZx + ci5ubXEMAAAAbHd1aG5kbTAud2pmDAAAAGtqdXkycm50LnVqdAwAAABxeGNpd3JpMS5seDEMAAAA + bHBlYnRqNXcuZmMwDAAAAHp0aWoxcWNiLml5MwwAAAAzbXdyZXpwMi5xaTAMAAAAYXoyamF3M2Eu + Y2RmDAAAAHBjanpvdzF1Lm0wMAwAAAAzZHlxdmg0MS5wYWMMAAAAMGFqY3lkcHMuYTRkDAAAAGI1 + MnJtY2htLnNoZQwAAABwczBzZGZzei5lcmMMAAAAZjUxdDNkaGIuanZjDAAAADV6cmhzYnpqLjF4 + YgwAAABqMmxtZnpzMi5xZmIMAAAAcjBlcngxaXQuaXRyDAAAAGpiMGRzdTAxLnBlbwwAAAAzd2ow + ZGsybi5hczIMAAAAem5iemhnaXAuY2xxDAAAAG5xYmJwcHJ1LmZncQwAAABncDF4emYxZy4zeGQM + AAAAcm95ZG9udWsuYjJqDAAAAGVlZ2czY3FzLml0eAwAAABtNHYxd29sdC40bGgMAAAAcHV4MHp5 + ZGMubHZsDAAAAGRiZGZtc3IyLmlrNAwAAAB1cXQ1c2EzaS5hbmsMAAAANWpjaWpoMWcua2dtDAAA + AHIwbm50eTRwLnFlMAwAAAA0eGMxcGMzai5vemYMAAAAZDN4dzNoZ2EuYWZkDAAAAHZlMHVtZnl5 + Lms1agwAAABhcHljZ2h1aC5hbHIMAAAAY3l6Z2twaDQuM2ljDAAAAGJjZTJ5dmNxLmhhbQwAAABv + eGxhdGdudy5hdG8MAAAAdGpnb2tzZTIudTRzDAAAAGt1MWw1NDVkLnB3ZgwAAAB1Y2VhYmxjcS5o + dnUMAAAAc2x3dXZjaXkucXlmDAAAAG9seWMwcml2LmhuYgwAAAB3cmN6bXEwbC5yZ3cMAAAAc3F3 + aTVla3UuZnl6DAAAAHdua2VzY25rLm5kbwwAAABoajRzbDVqMS5mdXkMAAAAczR4bmJoMmMudGgw + DAAAADVobHZvZ2l3LndtMQwAAABjcTBuNDVwei5mc3AMAAAAemYydndqaXIuZXVxDAAAADVqeHZk + NTMwLnp2NQwAAABqc2N2b3ljYy5xcWcMAAAAbHNqbnp2ZmIua3J3DAAAADRwYWliaHoxLnYxcAwA + AAB1cmkwMmFjMy5zYnkMAAAAbWc1cXdiMXEudGVqDAAAAG5sYmd5b2k1LmZkZwwAAABrM3ZiMW1v + by5xYWsMAAAAdmN5Z3FzcWUudXZiDAAAAGRobWFheWc1LnNrYQwAAAB0dW9sZ3lobS5seGQMAAAA + cW1mdXJrMWcucmNnDAAAAHMyZmdlMDAzLmNkMQwAAABpM25sY256dy4wNGwMAAAAc2UxNHJmeWwu + cG1zDAAAAHR0eW9kc251LjQ1ZQwAAABtcmQxamJ0Zy5uZjEMAAAAeWNtcG5ldzQueTFnDAAAAHd6 + dmF6cHZqLmFoeAwAAAA1bXVyNGt2ei5mZWoMAAAAM2NoYnN6dmYubXl2DAAAAHBldGsyZzVxLmxn + ZwwAAAA1bTU0Zmdnby5rdjUMAAAAeXptczVvMHMuNTN6DAAAADB4NTRsZHN5LmdxdgwAAABnZWlz + emdhMS53ZnIMAAAAamExY2xhdHcuNWNpDAAAAG9ydHVzdnlwLnp1dwwAAAAyYTJueHNxbS5hdHIM + AAAAeW5sNXR0eWgubTVsDAAAAG5xY2k0bjUxLjM0dAwAAABrMjRraXpsZC50aXQMAAAAcHBwZmNw + MmQuenRxDAAAAGtnbGl5ZXN0LmFmdgwAAAAzbGFlb25nbi5qenoMAAAAaDA1djA1YnQuc253DAAA + AGVrZGp0Y3U1LjNicAwAAAA0dmp3eTJhei5kc3cMAAAAYzR3MjF6ZXAuYWNzDAAAAG1hZmtrdGh1 + LjN5dAwAAABqaDV2ZGx6eC54aGIMAAAAanYzZ2lhMDAuemFxDAAAAGxucjAxemRkLmh0eAwAAABt + bmNkZjRudS5idnQMAAAAY3l1ajNjcjUuYmVhDAAAAGt2cG5kem94Lm1vbQwAAAAyZjB0c2Vuby5t + NWkMAAAAcTJvbGRtbDQuZHlyDAAAAHFqMTBqY3BjLmhrdwwAAABjMXZ3bWtvYi56azUMAAAAdWRt + NGFiMXMuM3FtDAAAAGtxZ2I1ZndsLnV6MwwAAABla21uYjBoZC55c3IMAAAAYWdqYnNrbnIuMmd5 + DAAAAGZwNGRqamxsLm1meQwAAABibzVkZW1oeC5taHcMAAAAcnppZ29ldWkuYnhkDAAAAHhhZmUw + aWlrLnQ1ZQwAAABybXZreHN6ZS5id2EMAAAAaHRxNWZndm8uaGdlDAAAAGczeXBicGprLnY0ZQwA + AABtbXYwb3lieC5rM2cMAAAAZGhqMGIxY3kudm5tDAAAAGJoYm5kZGRjLnp1cgwAAABid2NicDQx + ZC55dG4MAAAAZGhoZ2d0dGkuMWhrDAAAAHFwa3J2MW40LmlvcAwAAABnMGNsdDUxbS5wYnEMAAAA + bnhsbGRhYW8ua2RwDAAAADBucTV0Y3J3LmpldAwAAAAzNDAzbW9tai5nbGgMAAAAcG1kNHp6aGsu + eXJzDAAAAGYxcmMwNGp0LjFrbAwAAAA0dXhmc2loaS5tMHUMAAAAZWx6Z2t4dmoucmplDAAAAGxr + dmY1b3gyLmpqMAwAAABhejIyNG1qci5zZ24MAAAAemYwemFwdW0udnZjDAAAAGNjZnBqMG95LjRp + ZgwAAABtazB4dXZ5MS5pMjEMAAAAMjRmbjJ6eHIudGtqDAAAAG96eWZ1b3JuLjFybgwAAABhdnN3 + dTF2Zy5vYXMMAAAAcmNtaHhvczMucnptDAAAAGhyajVmZ3NnLjM1MQwAAAB0eWlibmV5bC54aHQM + AAAANXIzZHV6b2cuamlnDAAAAHBuMXJ5ZWFnLmV1bAwAAAB6MmFsbXJ6ZS5tdHkMAAAAenpxMGtm + eTQudmJuDAAAAHJ0cTBkZG9nLjV1ZwwAAAB3ZXRlc2hteS5kYW0MAAAAZWc0M2tvMG8uamhnDAAA + AHNxaGdhaW1wLnQ0YgwAAAB6cDRtdmh1Yy5xbW0MAAAAM2dnd3F3aHYuZ3MzDAAAAHd1emNxb3Z4 + LmZqMgwAAAAxbDFtNDFiai5nZHcMAAAAdnFib3FrcHQuMzJ2DAAAAGU1bTR0MmVxLnhsNAwAAABm + MXhtMTN6eS5langMAAAAMXNlcTVjaG0ub3BoDAAAAHgzYmt3Z3JyLjViYQwAAAA1MXNqeWNncy51 + bWgMAAAAMHNrdmJvanEueTBoDAAAAHo0anJ5YmYwLmVvbAwAAABxaXNmbDRsci5iZXEMAAAAb2xm + Z2RhYnoud3djDAAAAGFnem1oeHV1LmN3aAwAAABiNXB4bTR2dy5yamIMAAAAbTBzb28xanYubG5x + DAAAAHJ4dWJ2dmdwLnhnZgwAAAB0MzJuM3huZS5kZWgMAAAAdWZvMG1sNWsuanphDAAAAGJqZmQ0 + cWNvLjRtZAwAAABkdnJmZW0ycC51bGgMAAAAdGJ6Z2loM3YudHQ1DAAAAGlmeTJlcHVrLnNxNQwA + AABmYWlsMzVieS5ycTMMAAAAbTVlZ24yZmsuYWllDAAAADBsaGlrbHFrLm9iegwAAABsb3h0eHlv + dS4wMWcMAAAAbXYzcm5lZW8ucmljDAAAAHI0cnpyeWkyLnF3NQwAAABxcmJsMDVxei4wNWUMAAAA + YXcycHJqYmEubTNhDAAAAGJoZ3l2aXZqLmNiMwwAAABkbHhlcTVjMC5vcnYMAAAAbjN2MDRyaHAu + YWV4DAAAAGQxcXZ1ZmltLnBidwwAAABveWVyanp2dS5wZm8MAAAAbnVheGtib3YucXB1DAAAAGtk + eWRhcWlyLndjcgwAAAB3YTM0Y3VrMy5iZGcMAAAAZTVuMWl4anoud3JrDAAAADJycmk0MXBqLmV2 + cgwAAABoeHJqNHJzZS54Y20MAAAAdzQxanFwemMueDF4DAAAAGJqbTJhdTNyLnR5eQwAAAB5eTFi + eDNtZS5tbHgMAAAAZ2I1MG11bzUudTNoDAAAAG1pd3Z3anQ0Lmo0aQwAAABxY3JpbWFoby5jbnYM + AAAAdWdlc3R5dzEudXBsDAAAAHNqczJ1NGVwLmdlMwwAAAB6NWZqc2N3Yi41NWIMAAAAaGxmeDFn + cXMucTRqDAAAAG0zbnduMGUyLmhscAwAAAB2cm9iendrMS50cG0MAAAAaGFyYXF2ZGYuZDBkDAAA + AG16YTR0NXNnLnV1dgwAAAAwaGh2cGpkNS55bXAMAAAAcHByanQxbWIuZ3RzDAAAADE0dnJkemEy + LnhtcwwAAAAzbWltdnF1bi5odTAMAAAAa2NsbGdqdGUuY2I0DAAAAHN6eGdsYWlqLjJvdAwAAABu + bWg0bmg1MS4xbjAMAAAAZ2Zyb3ZieGwucWJtDAAAAGUwbnBsbndqLnlzZQwAAABkYWhodXF2Mi4z + b3IMAAAAcHhuMXQzemkuYWNnDAAAAHl0MDBodGtrLnd0dwwAAABwend4NTIzMi5ocWcMAAAAbXJ1 + eWx6dHQua3BiDAAAADBiaWNzeXFvLmJxZAwAAABndnpwbnZ4cC5xbGwMAAAAM3V6bDFmaXUucmYy + DAAAAG9mZGptbnN2LnVodAwAAAAyeWhndHVzei4xa2YMAAAAMXcwYnhkY24ucHgxDAAAADFwbWx3 + Ymt2Lml3MwwAAAB5ampoa3Fsbi5pdWIMAAAAMHh3MW95bG8udHdlDAAAAGtteml4cTR3LnUzcAwA + AAB0djEzd3F2eS55dWIMAAAAb2EyZzNlanQucmlmDAAAAGViZXBnanc1Lm10cQwAAAAyZnkxMzAz + Zy5ueXUMAAAAMGM1dXR1bWYuM3RzDAAAAGZuY3RrY2JnLmMwYwwAAABibmtzZXdzZy53em0MAAAA + eXlpajEwMW8ucGlqDAAAAHA1anlkbHI0Lmh2MgwAAAAzaXBjZGF3dy5hcXIMAAAAMDRtdzV6MnMu + dW0wDAAAAHdjdHBua2ZoLjJ1bQwAAAByenBxc2JzMC41dGEMAAAAdmFoeHF6MGMuMnBtDAAAAHZy + MHNza29yLm4ydwwAAAB4dDUwMHUyYi5yaGsMAAAAY3ZpeTI0ZHguY2t6DAAAAHU0c3dkb2x4LnFq + ZwwAAABqc2V0emMwZS5qaGUMAAAAaGI1NGIxdGkuM3F2DAAAAGVyNXFzcHZyLnUxMAwAAABibzRp + MnNmdi53MnUMAAAAbXpwdnNudWIua2xoDAAAAGtrMG14djBmLnNsbgwAAABjemJlbGVqZy5xaXEM + AAAANXhob2txNTQuY29qDAAAAHVyaWhzbjR5LmVreAwAAAB2dGFtaWl2MC5sd2IMAAAAbHhhc3g1 + eTQuejMyDAAAAG12dnJ2czFuLmRodQwAAAB5ejJxa2h3ZC50ZGUMAAAAeGwyYWd6dHYuMXNmDAAA + AHZnNGNybm0yLjNjYgwAAABrNTVmNWtwcS55cWIMAAAAa2RlbGI0bWkucWNtDAAAADN4NWxldGk0 + LmtkYgwAAABqd3FnYnVtYi5pcnQMAAAAaGVkbHlpNXQud3FsDAAAAGZ0ZXRzM2tvLmhtbAwAAABy + Z2MzdjN5cC4xY3AMAAAAZ3BoMzNqcGwudHoxDAAAADR1eDNzd2l5LjNhMgwAAABuY211d3V1MS41 + ZjAMAAAAaGhrYjBrdzAueWkyDAAAAHZobG1ha3VwLmhzaQwAAAAyd3dkdXFzdy50dzEMAAAAamJm + Z3FxeDUudHoyDAAAAG80dWk0a2RyLnAybQwAAAB4aWd3ZHBxZS4zencMAAAAamIwemtsbDEuMmFo + DAAAADB3eHBpZWlpLmVndAwAAABuNDNudG81NS5ueWYMAAAAeW1ocjFxeDUuMW9yDAAAAGY0bGZ3 + b3hpLm50ZgwAAABuemZyYmJ2eC5weXkMAAAAeWhyNXZvaXouMnVvDAAAADN5NXAyZXp3Lm55YwwA + AABuNXFnYWgxbS5vM28MAAAAcDNzMWUwMWQua2pnDAAAAGVxZDFoa2NhLnkzbgwAAAB2YTN1Y251 + ay4yMXAMAAAAYWVrYTE1Z3EucXFkDAAAAGNwdDNvNGZhLnhzdwwAAABsMXMyZ3Fhay52cWQMAAAA + anJvM2hzcDMuMmYzDAAAAGJzZ2FhdTBvLnBvawwAAABybHgxZGVoaC56eHoMAAAAdmZlNGlibmMu + YjJyDAAAAG5paTFtc3YzLnBzdQwAAAA1cWtkbnR5ci5xa3QMAAAAa2Yxa3Yxb3kuaGsyDAAAAHh1 + bmd3dWlqLnViMwwAAAB2Ymx3MndldC5rcm0MAAAAanFkZ29tNWEudmMxDAAAAHk1amtjbG4zLmxw + NQwAAABqcW1xeWVkdy5naWEMAAAAMW9qYjIwaWEudnRqDAAAAHRmaXZkdjIxLmF4MAwAAABwaWQw + aHpwcy5kdjUMAAAAd2ZnY2RxNGYueG8yDAAAAGNicDA1eG0yLnM1MAwAAABhMjAxYXBodi4wZjQM + AAAAZGwxMnl6bXIuZWJmDAAAAHgwZXZ5dHFyLmEydwwAAABnZm91NHlrMS55NXQMAAAAdzJqZHZs + MmIuZmJ3DAAAADJ4a3c0eHhyLnVpawwAAABneHFsaWdsMi5scHMMAAAAanN5dXl1emguZGhyDAAA + AGRkem5lMGpnLmV2NAwAAAB6d3pkdXBjcy5mMWMMAAAAbHZzYWFsYzEubWxqDAAAAHhheDBhZTVl + LnpjeAwAAAByZmRncm4xZS5yZHYMAAAAc201MnV4bm0uYjMwDAAAADF2cWt5NWZhLm54ZwwAAAB5 + Y3lreGVnYy4zYmwMAAAAajNqMnV5ZGIuZ3JmDAAAAGh6aHozNG1mLnB6NAwAAABhMHJzaWUxci5p + cTUMAAAAMGp1cmoyMWkuNDAzDAAAADAyM3c0YnJ4LjNzMAwAAAA0em95YjRzdy4zbXMMAAAAcGlv + MnM1MHAueGprDAAAAHBpYWpibXpyLmgzcgwAAAA1ZDMxeW5ndS54a3IMAAAAZ2dlMGMwdWEucmsw + DAAAAGpvZHIxbHVjLmk0cAwAAAAxcmNrZDN5NC5pbWoMAAAAeGxhbXhwZ3YuMWp0DAAAADJlMGsz + MWJwLm4xdAwAAAB1MW1sazF3NC52bjIMAAAAa3Y1YWhldmoudjBuDAAAAGMwdDVyMm9jLnI1cAwA + AAB4d20wdGt2bS5xbHkMAAAAdWpqcW9pM3IuamoyDAAAAG5sdHl0amd4LjN3YQwAAABoZmF4Mnhy + di5yc3YMAAAAdmdyYnlxdXYucXQ0DAAAADFqc3d4YWh3Lnk1awwAAAAza3Ftb3d3di5ia24MAAAA + ZDFocWk1dmMuY20yDAAAADFxMGRseGNpLmhjcgwAAABkemJsazRyai52ZHYMAAAAZ3loeDBwNXQu + ZGlzDAAAAGNsaWY1b3h2LnQwbgwAAABwYm52dzJ2Yy5oMDUMAAAAaWUxajNldXoudmMyDAAAAGNq + cnNjaWp3LmJzcAwAAAAxcGxtbjN3ai5kZzIMAAAAd3BxeW15cWMuZXBvDAAAADNteGpyYTBhLjVu + dAwAAABhcGxhZTVocS5ibG0MAAAAc3VjajQwcG8uMzRjDAAAAHpiY2twcDQzLjV1agwAAABhbG5s + YjRlNS5ibnkMAAAAYWl3amdzcWUuZW1mDAAAAGswbzFsbTUwLmNxYwwAAAA0cm1tbDVlYi5xZXAM + AAAAYXBpbWdvdGYueXE0DAAAAGF6b3Jwd2QwLmR3NQwAAAB5M2x0ZGkzYi5xZXMMAAAANHhvbHRm + cDAuZDV0DAAAAGhocDI1d2FpLnFxMAwAAAB4Y21obGJ6NS5paXIMAAAAbnpqd3p6MGYudmprDAAA + AHhyMTFmNHVuLjJidQwAAAB3ZGhqeHBuei5neG0MAAAAMnh5bGlsM2wuazF4DAAAAHZzMXZqd2cx + LmdqMgwAAABrMHRzbjRmaC5va2wMAAAAZDFqb2N6MmQuaHljDAAAAHF2MmpucTVzLmx5ZAwAAABx + ZHpwNWRyby4xcXcMAAAAa2ZhYmkzdHYuaXRmDAAAAHB5NG9xeWRiLjJ6MgwAAAAyNGV0dGMwdS53 + MGgMAAAAZGZkNDN6dHcubWlyDAAAAGF6Zno1eWk0Lm8zagwAAAAzdDV1d2Ruby5tdHoMAAAAb3ls + ZjF4aHguZ2RqDAAAADR5bnAwdmFuLnpidQwAAAA1enF4bXZqcC4yNTUMAAAANXFnc3F0Y2QuMmpk + DAAAADRuMm5kMGlvLm53ZAwAAAAxMm1qNWlrdy4yY3MMAAAAY3ZvZnd1dmwucXhnDAAAADBobHU1 + ZnJ1LmRjcwwAAAB4NGpoNXBkci51bzUMAAAAcWRxNHdib24ucWFyDAAAAGhvMHBhbHF4LnNocgwA + AABhMmJ0bWJ5YS5xZ2UMAAAAbGk1b3NwamouMGxsDAAAAHpldGgyMTFkLjBoYwwAAABsY2Y0NXky + bi52bjQMAAAAZXpvemI0M2suYTR6DAAAAHR1ZHVoanlyLmdnbwwAAABuZHBqaXJneC5rbHUMAAAA + MnBsbXVrdHIuYnB4DAAAAGhmeGxnb3RjLmcxYwwAAAB2cGtiMTF5Zy5pMHEMAAAAcW4ybmpvMTMu + Z21sDAAAAHJpY2o0eGs1LnBqbQwAAABqZ2RuMmN5Zi4zYW4MAAAAZDB3aGk0djEuY2wwDAAAAHAx + bGdncnVzLnB5bAwAAABqb3R3cW95ei5jZjUMAAAAM3p1cnZ3Y2oueWZnDAAAAGkxcGFkdnVuLm96 + bgwAAABhdGhucnJ6di5pdG8MAAAAc2Nmc21zZzQuc2lsDAAAAGdxZGp0MXNtLnZ4bAwAAAAzMG1i + aDNraS5rYm8MAAAAZzRoZnNoYWwuY2JpDAAAAHZlbmptanFtLnRmegwAAABhNTVpdnQ0My5zcWoM + AAAAbGY1cG14YXguYWJ6DAAAAGdtb3cwcmI0Lm13egwAAAByM3Nlemh6ai5xZzIMAAAAMGN2NHh6 + dzUuaXU1DAAAAHlzMjMzZm52LmNscAwAAABzaDJuZ2Fvdi5lY3QMAAAAbXFudG4ybXEuend2DAAA + AG8ydHFzM2NuLjBxcgwAAABycnF5ZWt6di5pcnQMAAAAcDVxMXkzdmQucDV5DAAAAGUzYzVtY29q + LmExcAwAAABtNXNxd2Nkai5vbHkMAAAAeW1uaG40bGguZ2lpDAAAAGZ0ZmJrbXlyLmoxMgwAAABo + c3ozcWdoNC53MTMMAAAAZWN0Zm9paHMuenV1DAAAADVsbHl5b2dhLmp0cgwAAAB2cmd5Mnl0eC5k + MzMMAAAANXA1YW1ja2wuam1sDAAAAGdrZXpkZmNzLjAwdQwAAAB0MzF2eHViaS55cmIMAAAAZzJ1 + MzJrenQudGllDAAAAGEzdG9nZnBjLjJ4MAwAAABrYzM1cDF2bC4wMXYMAAAAaml0MW9zNXcuanVj + DAAAAGVia3h2bXExLjJ0aQwAAABqYnd6cXVvbC54cDAMAAAAaHJrM2JwaHYuaW5qDAAAAHkweWNj + bTQxLnQxbAwAAAB3aW55a2FtZy5rMjMMAAAAaGtpamsxNTMuZTRwDAAAAGd4ZHprY3phLm1zbgwA + AAAzaWtwa2tteC5xZjIMAAAAYnRoc2dnNXQubnl4DAAAAG50M21pdGJ0LmowNQwAAABwamdpNTBu + MC41cWYMAAAAM25uZGNobWcueXZrDAAAADRhaXdwMWVhLjI1dAwAAABobXhjMmxqcC5ja3cMAAAA + d2lveTF5bmIuZ3gxDAAAAGdjdDNqbzEzLjJwMwwAAAB0cTB1MnZwbS4wdDMMAAAAb21ncW53dzEu + eTUxDAAAADIzcmVlbjI0LngzMgwAAAB6amVheWVzZy56dWsMAAAAZ2trd2x4MGYubnNvDAAAAHpz + dWl2em1jLnRmMwwAAABvMmt4bXBicS50bXEMAAAAdHBhbzNsMmgucG9zDAAAADBmbXozdHNxLndz + cQwAAAA0dDIxaDB0Yi56dDIMAAAAZXp1anB2ZXkuaWs1DAAAAHNoY2RzeW9nLmRlMwwAAABpdmt3 + ZWxteC5kaHoMAAAAc2JvNHRjeXcuNHV3DAAAAHJzbnpkbWExLmFlcwwAAABjYXd3YW5pbi5nYncM + AAAAajJvNXdkcncuZ3VrDAAAAGF5MHVodG9mLnN5ZQwAAAAwYnQ0d2l6bi4yaWwMAAAAeHFtamtv + NTUueGZwDAAAADVvdnlydHptLmQxawwAAABsY3VoaDR3cC5ldzMMAAAAYWJ6cGhhMTEuM2tkDAAA + AHZ2MWVkcnI0Lm1rcAwAAAB1aXEwajFrei5yNXcMAAAAeHFydWd2NG8uYWpkDAAAAHo0a3hibjVm + LmJjcAwAAAB5ZGVzcGpjZy5pajUMAAAAb25yMHJvZGsubGN6DAAAAGoxd2Z3eGVhLnMyNAwAAAB0 + cDRtNXR0dC53bXgMAAAAcGpkY3Bzd3MuYWoyDAAAAGtrcXgza25qLmh2ZgwAAABwdHJubm5jeC41 + ZW8MAAAAc2I1MTJ5YmouM3JjDAAAAHExenBoamN2LmNpaQwAAABwdGNka2ZxYy55M2MMAAAAZGl5 + bmJjc2gueHR1DAAAAG8yYTFiZjVoLmJlMAwAAABwMDBhc2psci5rengMAAAAM3hwYnRmYXMub2R5 + DAAAAHNwZmZ3bHhwLjRtcQwAAABjZGMxd25iay5sbWgMAAAAYjBvbm5ueTQueHkxDAAAAGJ0cXdr + NWpmLnhjYgwAAABncTR4c3dxdC54ZjIMAAAAeHNheHVzbmsua2pzDAAAAG9pYzE0azI1LnducwwA + AABsdnpvdzRpMy5jNHYMAAAAankzbWtueGUuajJ0DAAAAGxnNXI1ZnFnLmJwNAwAAAAxZWFqZ2Js + aS5tcGQMAAAAbzBydHh1YmcuMWdnDAAAAG1panliYXlrLjRtNAwAAAAxNW9wZjIydC56aW0MAAAA + MGJlaDRta2QueWVrDAAAAHVjc2pka3FxLmJpbAwAAABwbjRndzJwZC5nZXMMAAAAem92ajRqYjUu + MXVhDAAAAGMyMjN6Y3JsLmljcgwAAABiamp0NWRhNC5heDMMAAAAMnl6a3Fvc3kuZ3Z5DAAAAGJr + NGVwa2hrLnVhdQwAAABzbG40cmZxYS5jMnAMAAAAdnB4aXh1dnEuMmR0DAAAAGtpdDJndzFhLmMz + dAwAAAB3ZWowcGhmbi4xa2sMAAAAdHh1aGhxcGUuNDEwDAAAAHhzeHR3NGgyLmZjdwwAAAAzZm4y + cmR0NC5qZmMMAAAAYmdpMnN0YTEuams1DAAAAGlxbmRvamJqLnA1YgwAAAB1cG4zYnh5bS53NTAM + AAAAbmdkdDBybnIueGtzDAAAAGN2M25tMjJlLmN3MQwAAABqZmZqeWE0bC41aWoMAAAAcmJhbXB0 + NGkub3JrDAAAAHdveTFvZ3N0LmIyMAwAAABicHcyNHN6dy50am0MAAAAd3pmams0bDIuc2l0DAAA + AHYxcXRtZzFlLnV0cwwAAAByajJjcWRycC5taDQMAAAAMGU0dWRxd3cucG9qDAAAAG5lazV6c25y + LjB0MAwAAAA1am9zZG5oZi5ndmYMAAAAbXd6aXA0MWkuaTQ1DAAAAGlqZmsxc2l0LjR3eQwAAAAx + bXZ1eDFzcS55cHEMAAAAZnpiZ2JocDUueW1xDAAAAHVpMTFkenFuLnR0bAwAAABqMTBiMDNsaS54 + NGMMAAAAMXJ4MHFuaXQueW96DAAAADJzc2puMWF2LnptbAwAAAA0bWMxMzR4dy5yNGcMAAAAaXRl + aTVxa3oudXZiDAAAAHIxMWlkZW5sLjBycwwAAABzaWoxMDU1eC50eGsMAAAAamIxMTJkYnQuY3Z2 + DAAAAGIwd2tncGFuLm5xawwAAAAzNXBlamIzZC5mZDUMAAAAMm5oeHB4MmQudDNlDAAAADFkbnhr + bzRxLmRhdgwAAABhdzB5cWZwby4xbTIMAAAAb2U1MnN0cXguMnJsDAAAAHBubGhjd2t6Lmt4MwwA + AAB4bGdvNHgxdy5odXUMAAAAbzRrNHJvNW0uMmdiDAAAAGF1azJ3dHhnLmVmMAwAAAB3ZzBkYWwz + Zy50bXIMAAAAa2p4MGVyb2EucGYwDAAAADJnNHlwdHVlLjMzegwAAABoMjNpeXJlZS5qaWoMAAAA + aGR0dzNsZWouaHdyDAAAAG5zY3JjdXkyLjFkbgwAAABrY2ZudjJzcS5qMGUMAAAAMjJxMHB3Mmwu + NWZsDAAAAHhoZWd5d3Z6LncxYwwAAAByMnhzaTVtaC5wbzEMAAAAcHp2dTV5bXYudXh3DAAAADVx + ZGRrYmJiLnFnbgwAAAAzZnM0ZDBnMS5qeHcMAAAAZW9meW9ueDUudHpoDAAAAHd2djRwcW0xLmV4 + dAwAAABweXZudXJ0ZC4zZGMMAAAAaXhlNGF0czQudHEzDAAAADFycjMxNGcyLmQyeQwAAAA1YmRz + eTR1cy4yMmQMAAAAamxiMGJ0enIubGt3DAAAADR1MGhiYWQzLnhyNQwAAAB2dmdrbDJjby4yeXQM + AAAAa2c1anNqNXIubG96DAAAAGkyaDNoZ3NhLnhkMwwAAABudnVkMTNicC5iNTQMAAAAYnAza21y + d3AuNHUzDAAAAHd3MGFzc3l4Lmp6MQwAAABvaGJ1dXNwdS5ha3cMAAAAcmNpNHpxemQuNHNmDAAA + AGZ1b2pmcTQwLmZ5dAwAAABtYXBiazJpdS5jNHEMAAAAanUxdm8wbG8ubHF5DAAAAG1hMHNxZXRq + LnF4cgwAAABxbnd1dGx6YS5neXkMAAAAamtybnJkdTMucW5vDAAAAGF2NHNsZ3cyLm5qNQwAAAB4 + a2xpamN2ai4zcjEMAAAAc3cxYnZyMHIucWN3DAAAAHZydnI0amFwLnJkMwwAAAAzM2pqYXBhcS5x + bGMMAAAAczFwZ3psaHgueXRwDAAAAHBseDN3aWh0Lnp5bwwAAABwY2llMGp5Zi4ydGEMAAAAd3No + cmV0dGYubzAyDAAAAHNyZXZ3eGN4LmY0dwwAAAAyZjNleW4yeC5nc2MMAAAAZXF3MGFsZnUud2Jr + DAAAADBpdDFtZnhzLmpxMAwAAABpbHl4dXR4ei5tNXoMAAAANHJobG9pcjAuaTAzDAAAADJ2b2Nm + ZzNtLnhycwwAAABkd295eWllaC5wZWMMAAAANWIycGk0NWEuZGk1DAAAAHlkbWRrMWJwLmtlaQwA + AABqaWRjNW5paC41enEMAAAAMDJnYjJ6aXQuM3VtDAAAAHE1ZmFjM2p6LnczaQwAAABnZmswc2Jj + My5wYWsMAAAAd3Nnd3B0d2IubG8xDAAAAGRtd3FycXpvLmthdQwAAAB5ZWVrbGp3YS5oZWwMAAAA + dHpoNHN2dTIuaHp6DAAAAHBjbXhrMWZuLjRseQwAAABjMWt1M3p2bS5hMXAMAAAAa2owMDExNWUu + dXZnDAAAAGJuNHN5cWdrLjBjMgwAAAAyb21sNWJ2NS4zdGsMAAAAdzB5eHBjd3cubWwwDAAAAGQx + ZmNqYmsxLnFseAwAAAAzcmhvM3Rkdy51MnoMAAAAb2FrdGoyZGMuZjVuDAAAAHoyaTF4MTIxLmY0 + eQwAAABra2lldXZ0NC5zY3gMAAAAeHJweXVia3kub2NwDAAAADVieXR0Z29oLmRtMgwAAABkYXYz + Ympvdi5waTIMAAAAb3NoaWh4ZG8ueTFwDAAAAG0wYnJramU0LngwagwAAAB4ZHU1ZXg0cS5memUM + AAAAeGVnNDBib2QudWp3DAAAAHBnMXYzczJiLjN0egwAAABuc2FqdWY0ci52dGcMAAAAY3FrdWtz + bHIuMjJwDAAAAGZ2dmh3aWs0LjF0NAwAAABkanRudmJwdC5seHQMAAAAa3Nkdm1wMzEuenNzDAAA + AGF3cHczZGpiLjBnZAwAAABwb21kYzF0cS52amgMAAAAZHJqZm9pbnUuejQzDAAAAGYyc2NpaHI0 + LjJubQwAAABweWR1bGNpYi56YzQMAAAAMDF3d3llNGcucGZzDAAAAGNxd2ZnaG11LnYydwwAAAB5 + anphNGJrbC5ocWcMAAAAbG5qMmpyNW0udGJtDAAAAHl2MG9tcWl6LngxdAwAAABzYXNueWEyZC40 + d28MAAAAem5iejRoYmQubHozDAAAAHZ6MzFuYXNzLjM1cgwAAAAxc2I0bnlsZy5yejMMAAAAYTQz + emVkaW4uMXYyDAAAAGV5YTUwcnZmLmg1YQwAAABkMXV4YnFkMy53bjQMAAAAMHRsNTU0bWYuZnMx + DAAAAHlmendwNHlxLnp5bAwAAAAwYXNiZHJuci5yYXcMAAAAbjNqeXZrdnAuZ3doDAAAAHJja3A1 + c2ljLm1mawwAAABrZWVmcG1nYy50dGcMAAAAcXAwZXlrdDMucTRxDAAAAHowc3UwZ3c0LmxwaAwA + AABkNWZ4cXpldS5ua2kMAAAAbTVraGpscHcuZzMxDAAAAHRjMGtqeXF1LnV5ZQwAAABhaG5ncmlv + dS56bWUMAAAAaGVxa2R1bHUudHE0DAAAAHlwZHZ3MXRtLnN0dQwAAAB2ZHc0NG4yMC5lcHkMAAAA + bGN6aTQ1MnAuaWEyDAAAAGEwcmY1azRwLnQwcwwAAABhcWg0YWc0bC5uZ2MMAAAAZWNwdWE1cWku + bWd0DAAAADV3b25lcTUyLnJndwwAAAB3NW9rNWp2ZS5xbHcMAAAAMnpjcWJrZmEubGVvDAAAAGR1 + eXpvNXVlLjNuYwwAAABqNG9nMnlzdS5sd2kMAAAAZGttcWp6ZTMuYjQyDAAAAGVmZ2FvcmRxLnhy + eQwAAAA0bzNhY3B0ZC41c3EMAAAAa2J5cHJpMm8ubGJnDAAAAGtxZ253ZXJ4LnB3dwwAAAB6dXRn + enA1bi52enUMAAAAZHZycHZ5M3EuejJzDAAAAHNidjFqcGh3LmdyYwwAAAB6ZDFoaDFsdy5wZGwM + AAAAYW1veWtvZGkuNW9nDAAAAG1uMWkzYjMzLmF5YQwAAAB2cHllbGFvci52M3IMAAAAeWpibmgw + cGouMzF2DAAAADMwcndocHBsLmt1NQwAAABrdWJwcWxvYi53MXkMAAAAazNsZm9pbWEudGtmDAAA + ADNleGlsbXB2Lmp6aQwAAABsYWF1bW1nby51em0MAAAAMHIwcTV0bHkud2ZwDAAAADN4YTBxZ2x5 + LmljcgwAAAA1NHBhMnBtdy5yamkMAAAAYW9nZWs1dzEudzMzDAAAADNvZ2t3cWVvLmhpaQwAAABp + ZmxlaTFuMS5idGsMAAAAYmxkd2R0b3Uudmk0DAAAAGFiMXNhdGo0Lm1xdQwAAABkd2ViZGwwbC5t + cjIMAAAAYTRxZG94ZWsuajMxDAAAAGszMHA1c2NuLnRsMwwAAAB1MHoxMHloby5pbXcMAAAAY3lr + ampkMWMuNGd5DAAAADVqM2wxMHEwLnlmcgwAAABhdXF6cmp1aC5ld2QMAAAAemdubGx6bnUuc3Fv + DAAAAGI1ZjNmcWRpLjB5NQwAAABzeWpobG9pby41YnMMAAAAcDVucm4weHkuMmkwDAAAAHVkeGxj + dmdtLmpnagwAAAAzZmMwZXdibS5lYXUMAAAAejFkMHVvdDAudnNqDAAAADIzeTNzZnFjLmZnZAwA + AABxMnRmYjB2ay5uMmQMAAAAa2xieXcwczUuZ2ozDAAAADN0bWhjaHExLjFxdQwAAABjZXU1M2o1 + dy5rcXYMAAAAbWRjcGVld2IuNXhxDAAAAHl6MmFpd3k1Lm9scAwAAABidHZycTFiZy5jeXIMAAAA + eXlhbGJ1Y3MuYW5nDAAAAHAzeHRvcDFpLnFlZwwAAAB3ZXdrM2dmZC5uaW0MAAAAZm1qb2d4b2cu + NTU0DAAAAGVydTJsbmowLnN1dAwAAAB6bG5xa3hnYS53MHIMAAAAZXgxeDB1MXUuYnpuDAAAAHZm + eGJidWFkLm5tNQwAAABidmo1eWxwZC53ZnYMAAAAZW5rY3FzNTUudGx0DAAAAHdsZzBxcWh2LnNy + ZwwAAABvZWVrcjJ0eC51aXkMAAAAdmh0aTB3cXAudWYxDAAAADV0cXh0enYzLnk0cgwAAAB4ZXdl + bGRrdi56YXEMAAAAamJ4YzB3dWkuMWlkDAAAAG9rdXB6MnN2LmhmaAwAAAB1MWJ5eDFlbi5taXIM + AAAAaGhwejQyeHQuZ3F4DAAAADBxbDMzZXk0LmMwagwAAAA1bTVsbjVsbi4wdTIMAAAAcnN0a2Jx + dWwudWQyDAAAAG94MDQ1azFvLmdtbwwAAAB0dWRrcW0wdS50dmwMAAAAY2ZjMWlvam8uNGluDAAA + AGozcGM1c20wLm1sYwwAAABpc2Q0MGpzdC50ZmcMAAAAazM0ZHdjd2IuejNtDAAAAHZleDV1c2Rv + Lm1nYQwAAAB5ZWpnb2d4by55bnAMAAAAdjRvbjB1bGwucHlmDAAAAHB3MmUwbHpzLjVnawwAAAB2 + enEzMW94Yi50djMMAAAAeHFzMGthZ3QueTV4DAAAAGhyYmlrNGllLnNndgwAAABjZWtsNDBzaS5y + cnkMAAAAMDV0Y3h0MmwucXo1DAAAAHF4bHZnczFiLnVjbAwAAABnMndsNDBrMS5qeTIMAAAAdWEx + cnIxZGwudWVlDAAAAHFzdWdueXZmLnhycQwAAAB6bXoxd3V0dC40bzAMAAAAYTJuajNxZ3kuajR6 + DAAAADUxeW01YmhxLmVybAwAAABpMXJsMnBlYi5odmoMAAAAcWJyanptcnUubWZqDAAAAHljNWdr + Z3lsLm1wdAwAAABkZDV3dGh5aS5xeGcMAAAAa3dlZHV2cG4uZnRhDAAAAGFqZDNkdjBoLmtqYwwA + AABocGdudG5qaC56dHIMAAAAeDRmYWF5b24uemd6DAAAAGRleDR4YjVsLnJtbQwAAAA1NWZvcXJy + bC4ybXUMAAAAd2lrdXB4b2ouc2V1DAAAAHVkYWxnenR0LmMzbwwAAAA0czJ6aG15cC4waTEMAAAA + MHB4MWRpY2wucWd3DAAAAHVxYTF4bGRxLnQydgwAAAB1MXF1aHRzdi5xdXUMAAAAMnMycmJmdm8u + anZpDAAAAGQ0bDQwbGJxLjUwZgwAAAB4YTNsajR3Yi5udHYMAAAAam9jZnc1dmQubG5tDAAAAHow + YmNsa2R1LmNwawwAAAB3MGpvZ3BzMS5hNXUMAAAAMDM0bDBvaDEuNWh2DAAAADNzY3Vzd2JzLnl3 + aQwAAABidXp6MmpuMi52MzUMAAAAa2V0c2IyeHQuaXgzDAAAAG01a3RycmtsLmJmNQwAAABkeXVq + MXRydC5rdXgMAAAAYzExcG9lMDMuaHJjDAAAAGJvd2lyZDQzLmI0YgwAAAB6M2E1eDR6dS41em8M + AAAANWw1MWswdGsueGRsDAAAAGZzNXgyYWxuLmpkZwwAAABpcno1aHAxcC54dzEMAAAANDRobGZs + djQub2lpDAAAAHVzMzMyMDJyLm1tbQwAAAAwZGV2aGIwMC5lbm8MAAAAeWdva2FscHQubXpuDAAA + AGx5ZmNscmh3LnJ0NAwAAABka3hrY2l1ai4zZnAMAAAAemtkbHNwcjEuaHQyDAAAAGE0aDNvMmFy + LnBzNQwAAABxd2YwM2lxZC5oZmUMAAAAanl0cHZ2YWEudWYwDAAAAGFvdno1ZjRhLmlhMAwAAABj + djFlMnhvdS4xbngMAAAAbGFsbzVncmoueWV6DAAAAHgzanRjbzRjLjJsaAwAAABycDR0c3ZibS5o + a2kMAAAAeTB2MjM1eG4uMG5mDAAAAG56eDR2MXBpLmNlMAwAAABocWFleXd2by5zazAMAAAAcXMw + YmRudjEuNDVjDAAAAGhpM3p5cjFsLmlidgwAAAB6YzJoM28xdy5iMnUMAAAAZ2F5eXo1dDUuNWNl + DAAAAGZhZXEwdTNrLmZndQwAAABtcmZwZ3FzdS5ldm4MAAAAY2hlbTRsb3kuZnMyDAAAAGlyc2xn + b2hkLjVibgwAAAB2YWR0YXNsaC5oeGIMAAAAZnhpMmwyeXAuNGdhDAAAAGd1aHFibjExLnVyagwA + AABmcTJ5bmZiMS5tb3IMAAAAZm50aWR4dHEudDJjDAAAAHNxenZhcnQ1LnlmZgwAAABnbDEyZ2Zx + My5nZWYMAAAAcWNtYmpha2cucGc0DAAAAG4wanFyaDNjLnBtdQwAAABpNGdmdmN0Zy5sa3gMAAAA + eW1vNXlsengudmt3DAAAAHZ1bWFocGV0LmVqMAwAAABza254ZXVhby41eG0MAAAAdHF5bmFoaGcu + dW8zDAAAAG4zMm00aGVkLnRtcgwAAAAwcHVpbjRwdy54NHAMAAAAbGgxZTBjM3QuamNlDAAAADBj + eXBuZGVwLjNrdwwAAABrdWg0NGp3aC53c3IMAAAAb3UzNDFwd2sud2lxDAAAAHBobWZtZ3dkLmli + cAwAAABhc2szdXNzcy56YjUMAAAAaHgwYzFnZmIudXQzDAAAAGFxaWloMGxlLnYyawwAAABleHVl + aWVmZi5sc3gMAAAAa2pmMG9ubmIueTNiDAAAADJ5dG1vZHpwLnMyZQwAAAB3NHczZjUyai5vaGEM + AAAAajJuamJtZHEuMTRhDAAAAG1xenExcGptLnM1NAwAAAA1ZjBvb2h4My4xamsMAAAAaWJxcjUw + anAudmVnDAAAADFsM3phZ3F4Lm80cQwAAABueGN4MzBpbS4wdDAMAAAAb3ZkYmVnZGcuMWRmDAAA + ADR3MTJncHAzLmRycwwAAABxMnlkYjJtci4xNGQMAAAANWZyZHJqNG4udmduDAAAAGtua3B5MGtv + LjFucAwAAAA0aW54a3YzZC54eWgMAAAAYm1ucnBscWcuMHdxDAAAAHh5Z2U0ZDM0LjQ1eQwAAAAz + bGN1aGZpcS4yYWYMAAAAeGtpNXYxMGguZHkzDAAAADA0bWJzeWJzLnAzdQwAAAAzZXlpYjNqMi5s + Z2sMAAAAeHlxZXE1ejMubTRhDAAAAGtqcG9ud3hqLnNjYwwAAAA1a3EyYm0wby52azEMAAAAcnNj + c21uNWkudzFuDAAAAHptNWtpY3JyLjV4ZgwAAAB3dGVvdHcxci54dW0MAAAAcXZkMDIzemguYmNw + DAAAAHlranlrY3F4LnJqMAwAAABqZHQxYnV0Zy41d2UMAAAAbW53ZjJnbXUuM3hxDAAAAG1nb2Vr + dTNhLnl3ZAwAAAA0bnAwdGdoNS5ybWoMAAAANHF2c3JndnIudnBqDAAAAHhjZGN6cnl4LmZhcgwA + AAA0azEwdnV6by56d3cMAAAAb3NhZHYyeWouc2RnDAAAAGx4c2VsYXF2LjJjYwwAAAB2dGkyMDE0 + di4zY3YMAAAAaGNhMGx3cjMueGp0DAAAAGJqbnIxMHN6LnM1eQwAAABzcjVvZ25jNS5ocHMMAAAA + YTJqaHRxeWIuczVjDAAAAGtmZG92aXptLmljdwwAAABvZDMzNDVvMS41MXoMAAAAY2VzM24zdjIu + dm53DAAAAHZycDBncG1mLnkyYQwAAAB2MDFmYWJsYi41djUMAAAAanIwZnRoYWYuNWJ1DAAAAG4x + dnYxdHN1LjFpbAwAAABnZjFiaDV6by5iNWkMAAAAY25sNHhpM3Uuc2NkDAAAAHMxaGpub2t0Lmx3 + agwAAABqbmE1em0wYy5hb3gMAAAAY2phenp1bXguNXE0DAAAADVvaW81bWN4LnoxMQwAAABrbm41 + cW1ueS5kbDAMAAAAbTNkd3JxMmEuMnJ2DAAAAGJ3YmlmM20zLm94YgwAAAB0aXdpb3VsaS4yMmMM + AAAAMXU1cjFuYXoueWhjDAAAAG52MGgxNHRzLnBpeQwAAAB3cnNzY2htcy5obWEMAAAANXF4MG81 + MmIuZnlwDAAAAGJuNHJ6aXNyLjV5cwwAAAB1cmZvMmJxYi51Y3cMAAAAc3ZlZ3Rpb2UuaWNzDAAA + AGZ6aWpmcGpsLmMwagwAAABnM3lwdTJobS5qanQMAAAAd2llaG1mejIuMTJkDAAAAGQ1eXViM3Nu + LmRoagwAAAAyZnZ3eGlsdi5pd2gMAAAAdTV4NWtwMXguenJlDAAAADEyc3Q0MDVnLmJ4dQwAAABu + cWZtMWJvZS51ZG4MAAAAdGxhczJ6Z2QuZWswDAAAAG0xdmhyMWl6LnhucgwAAAB6cHpuNHczeC5u + M20MAAAAYnNqbDBudmkuaW5oDAAAADJ0amlwd2J6LjR5NQwAAABnZ3BrZGxvdy5vd2QMAAAAZHpo + M2NmYXguNWZmDAAAAGlnM2x0ZWdkLjVpNQwAAAA1eTBnZWszdS5pMm4MAAAAa2JiZGEza3MubWl0 + DAAAAG1mbzF0amV4LjR5bAwAAABlNXFpNXppYS5sMXgMAAAAeTRjNHZsM3EuMnF6DAAAAGRhZHht + MjN4Lmx4cQwAAAB6amlqZGV2cS55bmEMAAAAM290ZXByancubW93DAAAAGQ1NXA0b3BjLng1aAwA + AAB4bGE0NGYxaS5jbmIMAAAANTFiNWZndXkuaDB4DAAAAGdsb2RnM2lmLmlyMwwAAAAwZGR2anNh + ZS5vdWYMAAAAZG5qd25lcnYuZGZ4DAAAADRoYXA1c3ZsLmowMQwAAAB2a3JsbHFndS5zemcMAAAA + MTEyYnFwcWYuaWMzDAAAAGtwNHhyeWdmLm9tawwAAAB1dWx6bmFwdS4yaGQMAAAAb2V6cmgwc2ku + ajJ4DAAAAHNudnF3aGkxLml3aAwAAAB6aWZsa24zcC5sMGoMAAAANGJ5ZnhkMDUucGJxDAAAAGRs + c2Fpb2FzLmhzMwwAAAAweGZhdDNxei5vYWkVABWOfRWOfSwV0A8VABUGFQYcGAQxOTk5GAQxMDAw + FgAW0A8YBDE5OTkYBDEwMDAAAAADAAAA0A8BBAAAADEwMDAEAAAAMTAwMQQAAAAxMDAyBAAAADEw + MDMEAAAAMTAwNAQAAAAxMDA1BAAAADEwMDYEAAAAMTAwNwQAAAAxMDA4BAAAADEwMDkEAAAAMTAx + MAQAAAAxMDExBAAAADEwMTIEAAAAMTAxMwQAAAAxMDE0BAAAADEwMTUEAAAAMTAxNgQAAAAxMDE3 + BAAAADEwMTgEAAAAMTAxOQQAAAAxMDIwBAAAADEwMjEEAAAAMTAyMgQAAAAxMDIzBAAAADEwMjQE + AAAAMTAyNQQAAAAxMDI2BAAAADEwMjcEAAAAMTAyOAQAAAAxMDI5BAAAADEwMzAEAAAAMTAzMQQA + AAAxMDMyBAAAADEwMzMEAAAAMTAzNAQAAAAxMDM1BAAAADEwMzYEAAAAMTAzNwQAAAAxMDM4BAAA + ADEwMzkEAAAAMTA0MAQAAAAxMDQxBAAAADEwNDIEAAAAMTA0MwQAAAAxMDQ0BAAAADEwNDUEAAAA + MTA0NgQAAAAxMDQ3BAAAADEwNDgEAAAAMTA0OQQAAAAxMDUwBAAAADEwNTEEAAAAMTA1MgQAAAAx + MDUzBAAAADEwNTQEAAAAMTA1NQQAAAAxMDU2BAAAADEwNTcEAAAAMTA1OAQAAAAxMDU5BAAAADEw + NjAEAAAAMTA2MQQAAAAxMDYyBAAAADEwNjMEAAAAMTA2NAQAAAAxMDY1BAAAADEwNjYEAAAAMTA2 + NwQAAAAxMDY4BAAAADEwNjkEAAAAMTA3MAQAAAAxMDcxBAAAADEwNzIEAAAAMTA3MwQAAAAxMDc0 + BAAAADEwNzUEAAAAMTA3NgQAAAAxMDc3BAAAADEwNzgEAAAAMTA3OQQAAAAxMDgwBAAAADEwODEE + AAAAMTA4MgQAAAAxMDgzBAAAADEwODQEAAAAMTA4NQQAAAAxMDg2BAAAADEwODcEAAAAMTA4OAQA + AAAxMDg5BAAAADEwOTAEAAAAMTA5MQQAAAAxMDkyBAAAADEwOTMEAAAAMTA5NAQAAAAxMDk1BAAA + ADEwOTYEAAAAMTA5NwQAAAAxMDk4BAAAADEwOTkEAAAAMTEwMAQAAAAxMTAxBAAAADExMDIEAAAA + MTEwMwQAAAAxMTA0BAAAADExMDUEAAAAMTEwNgQAAAAxMTA3BAAAADExMDgEAAAAMTEwOQQAAAAx + MTEwBAAAADExMTEEAAAAMTExMgQAAAAxMTEzBAAAADExMTQEAAAAMTExNQQAAAAxMTE2BAAAADEx + MTcEAAAAMTExOAQAAAAxMTE5BAAAADExMjAEAAAAMTEyMQQAAAAxMTIyBAAAADExMjMEAAAAMTEy + NAQAAAAxMTI1BAAAADExMjYEAAAAMTEyNwQAAAAxMTI4BAAAADExMjkEAAAAMTEzMAQAAAAxMTMx + BAAAADExMzIEAAAAMTEzMwQAAAAxMTM0BAAAADExMzUEAAAAMTEzNgQAAAAxMTM3BAAAADExMzgE + AAAAMTEzOQQAAAAxMTQwBAAAADExNDEEAAAAMTE0MgQAAAAxMTQzBAAAADExNDQEAAAAMTE0NQQA + AAAxMTQ2BAAAADExNDcEAAAAMTE0OAQAAAAxMTQ5BAAAADExNTAEAAAAMTE1MQQAAAAxMTUyBAAA + ADExNTMEAAAAMTE1NAQAAAAxMTU1BAAAADExNTYEAAAAMTE1NwQAAAAxMTU4BAAAADExNTkEAAAA + MTE2MAQAAAAxMTYxBAAAADExNjIEAAAAMTE2MwQAAAAxMTY0BAAAADExNjUEAAAAMTE2NgQAAAAx + MTY3BAAAADExNjgEAAAAMTE2OQQAAAAxMTcwBAAAADExNzEEAAAAMTE3MgQAAAAxMTczBAAAADEx + NzQEAAAAMTE3NQQAAAAxMTc2BAAAADExNzcEAAAAMTE3OAQAAAAxMTc5BAAAADExODAEAAAAMTE4 + MQQAAAAxMTgyBAAAADExODMEAAAAMTE4NAQAAAAxMTg1BAAAADExODYEAAAAMTE4NwQAAAAxMTg4 + BAAAADExODkEAAAAMTE5MAQAAAAxMTkxBAAAADExOTIEAAAAMTE5MwQAAAAxMTk0BAAAADExOTUE + AAAAMTE5NgQAAAAxMTk3BAAAADExOTgEAAAAMTE5OQQAAAAxMjAwBAAAADEyMDEEAAAAMTIwMgQA + AAAxMjAzBAAAADEyMDQEAAAAMTIwNQQAAAAxMjA2BAAAADEyMDcEAAAAMTIwOAQAAAAxMjA5BAAA + ADEyMTAEAAAAMTIxMQQAAAAxMjEyBAAAADEyMTMEAAAAMTIxNAQAAAAxMjE1BAAAADEyMTYEAAAA + MTIxNwQAAAAxMjE4BAAAADEyMTkEAAAAMTIyMAQAAAAxMjIxBAAAADEyMjIEAAAAMTIyMwQAAAAx + MjI0BAAAADEyMjUEAAAAMTIyNgQAAAAxMjI3BAAAADEyMjgEAAAAMTIyOQQAAAAxMjMwBAAAADEy + MzEEAAAAMTIzMgQAAAAxMjMzBAAAADEyMzQEAAAAMTIzNQQAAAAxMjM2BAAAADEyMzcEAAAAMTIz + OAQAAAAxMjM5BAAAADEyNDAEAAAAMTI0MQQAAAAxMjQyBAAAADEyNDMEAAAAMTI0NAQAAAAxMjQ1 + BAAAADEyNDYEAAAAMTI0NwQAAAAxMjQ4BAAAADEyNDkEAAAAMTI1MAQAAAAxMjUxBAAAADEyNTIE + AAAAMTI1MwQAAAAxMjU0BAAAADEyNTUEAAAAMTI1NgQAAAAxMjU3BAAAADEyNTgEAAAAMTI1OQQA + AAAxMjYwBAAAADEyNjEEAAAAMTI2MgQAAAAxMjYzBAAAADEyNjQEAAAAMTI2NQQAAAAxMjY2BAAA + ADEyNjcEAAAAMTI2OAQAAAAxMjY5BAAAADEyNzAEAAAAMTI3MQQAAAAxMjcyBAAAADEyNzMEAAAA + MTI3NAQAAAAxMjc1BAAAADEyNzYEAAAAMTI3NwQAAAAxMjc4BAAAADEyNzkEAAAAMTI4MAQAAAAx + MjgxBAAAADEyODIEAAAAMTI4MwQAAAAxMjg0BAAAADEyODUEAAAAMTI4NgQAAAAxMjg3BAAAADEy + ODgEAAAAMTI4OQQAAAAxMjkwBAAAADEyOTEEAAAAMTI5MgQAAAAxMjkzBAAAADEyOTQEAAAAMTI5 + NQQAAAAxMjk2BAAAADEyOTcEAAAAMTI5OAQAAAAxMjk5BAAAADEzMDAEAAAAMTMwMQQAAAAxMzAy + BAAAADEzMDMEAAAAMTMwNAQAAAAxMzA1BAAAADEzMDYEAAAAMTMwNwQAAAAxMzA4BAAAADEzMDkE + AAAAMTMxMAQAAAAxMzExBAAAADEzMTIEAAAAMTMxMwQAAAAxMzE0BAAAADEzMTUEAAAAMTMxNgQA + AAAxMzE3BAAAADEzMTgEAAAAMTMxOQQAAAAxMzIwBAAAADEzMjEEAAAAMTMyMgQAAAAxMzIzBAAA + ADEzMjQEAAAAMTMyNQQAAAAxMzI2BAAAADEzMjcEAAAAMTMyOAQAAAAxMzI5BAAAADEzMzAEAAAA + MTMzMQQAAAAxMzMyBAAAADEzMzMEAAAAMTMzNAQAAAAxMzM1BAAAADEzMzYEAAAAMTMzNwQAAAAx + MzM4BAAAADEzMzkEAAAAMTM0MAQAAAAxMzQxBAAAADEzNDIEAAAAMTM0MwQAAAAxMzQ0BAAAADEz + NDUEAAAAMTM0NgQAAAAxMzQ3BAAAADEzNDgEAAAAMTM0OQQAAAAxMzUwBAAAADEzNTEEAAAAMTM1 + MgQAAAAxMzUzBAAAADEzNTQEAAAAMTM1NQQAAAAxMzU2BAAAADEzNTcEAAAAMTM1OAQAAAAxMzU5 + BAAAADEzNjAEAAAAMTM2MQQAAAAxMzYyBAAAADEzNjMEAAAAMTM2NAQAAAAxMzY1BAAAADEzNjYE + AAAAMTM2NwQAAAAxMzY4BAAAADEzNjkEAAAAMTM3MAQAAAAxMzcxBAAAADEzNzIEAAAAMTM3MwQA + AAAxMzc0BAAAADEzNzUEAAAAMTM3NgQAAAAxMzc3BAAAADEzNzgEAAAAMTM3OQQAAAAxMzgwBAAA + ADEzODEEAAAAMTM4MgQAAAAxMzgzBAAAADEzODQEAAAAMTM4NQQAAAAxMzg2BAAAADEzODcEAAAA + MTM4OAQAAAAxMzg5BAAAADEzOTAEAAAAMTM5MQQAAAAxMzkyBAAAADEzOTMEAAAAMTM5NAQAAAAx + Mzk1BAAAADEzOTYEAAAAMTM5NwQAAAAxMzk4BAAAADEzOTkEAAAAMTQwMAQAAAAxNDAxBAAAADE0 + MDIEAAAAMTQwMwQAAAAxNDA0BAAAADE0MDUEAAAAMTQwNgQAAAAxNDA3BAAAADE0MDgEAAAAMTQw + OQQAAAAxNDEwBAAAADE0MTEEAAAAMTQxMgQAAAAxNDEzBAAAADE0MTQEAAAAMTQxNQQAAAAxNDE2 + BAAAADE0MTcEAAAAMTQxOAQAAAAxNDE5BAAAADE0MjAEAAAAMTQyMQQAAAAxNDIyBAAAADE0MjME + AAAAMTQyNAQAAAAxNDI1BAAAADE0MjYEAAAAMTQyNwQAAAAxNDI4BAAAADE0MjkEAAAAMTQzMAQA + AAAxNDMxBAAAADE0MzIEAAAAMTQzMwQAAAAxNDM0BAAAADE0MzUEAAAAMTQzNgQAAAAxNDM3BAAA + ADE0MzgEAAAAMTQzOQQAAAAxNDQwBAAAADE0NDEEAAAAMTQ0MgQAAAAxNDQzBAAAADE0NDQEAAAA + MTQ0NQQAAAAxNDQ2BAAAADE0NDcEAAAAMTQ0OAQAAAAxNDQ5BAAAADE0NTAEAAAAMTQ1MQQAAAAx + NDUyBAAAADE0NTMEAAAAMTQ1NAQAAAAxNDU1BAAAADE0NTYEAAAAMTQ1NwQAAAAxNDU4BAAAADE0 + NTkEAAAAMTQ2MAQAAAAxNDYxBAAAADE0NjIEAAAAMTQ2MwQAAAAxNDY0BAAAADE0NjUEAAAAMTQ2 + NgQAAAAxNDY3BAAAADE0NjgEAAAAMTQ2OQQAAAAxNDcwBAAAADE0NzEEAAAAMTQ3MgQAAAAxNDcz + BAAAADE0NzQEAAAAMTQ3NQQAAAAxNDc2BAAAADE0NzcEAAAAMTQ3OAQAAAAxNDc5BAAAADE0ODAE + AAAAMTQ4MQQAAAAxNDgyBAAAADE0ODMEAAAAMTQ4NAQAAAAxNDg1BAAAADE0ODYEAAAAMTQ4NwQA + AAAxNDg4BAAAADE0ODkEAAAAMTQ5MAQAAAAxNDkxBAAAADE0OTIEAAAAMTQ5MwQAAAAxNDk0BAAA + ADE0OTUEAAAAMTQ5NgQAAAAxNDk3BAAAADE0OTgEAAAAMTQ5OQQAAAAxNTAwBAAAADE1MDEEAAAA + MTUwMgQAAAAxNTAzBAAAADE1MDQEAAAAMTUwNQQAAAAxNTA2BAAAADE1MDcEAAAAMTUwOAQAAAAx + NTA5BAAAADE1MTAEAAAAMTUxMQQAAAAxNTEyBAAAADE1MTMEAAAAMTUxNAQAAAAxNTE1BAAAADE1 + MTYEAAAAMTUxNwQAAAAxNTE4BAAAADE1MTkEAAAAMTUyMAQAAAAxNTIxBAAAADE1MjIEAAAAMTUy + MwQAAAAxNTI0BAAAADE1MjUEAAAAMTUyNgQAAAAxNTI3BAAAADE1MjgEAAAAMTUyOQQAAAAxNTMw + BAAAADE1MzEEAAAAMTUzMgQAAAAxNTMzBAAAADE1MzQEAAAAMTUzNQQAAAAxNTM2BAAAADE1MzcE + AAAAMTUzOAQAAAAxNTM5BAAAADE1NDAEAAAAMTU0MQQAAAAxNTQyBAAAADE1NDMEAAAAMTU0NAQA + AAAxNTQ1BAAAADE1NDYEAAAAMTU0NwQAAAAxNTQ4BAAAADE1NDkEAAAAMTU1MAQAAAAxNTUxBAAA + ADE1NTIEAAAAMTU1MwQAAAAxNTU0BAAAADE1NTUEAAAAMTU1NgQAAAAxNTU3BAAAADE1NTgEAAAA + MTU1OQQAAAAxNTYwBAAAADE1NjEEAAAAMTU2MgQAAAAxNTYzBAAAADE1NjQEAAAAMTU2NQQAAAAx + NTY2BAAAADE1NjcEAAAAMTU2OAQAAAAxNTY5BAAAADE1NzAEAAAAMTU3MQQAAAAxNTcyBAAAADE1 + NzMEAAAAMTU3NAQAAAAxNTc1BAAAADE1NzYEAAAAMTU3NwQAAAAxNTc4BAAAADE1NzkEAAAAMTU4 + MAQAAAAxNTgxBAAAADE1ODIEAAAAMTU4MwQAAAAxNTg0BAAAADE1ODUEAAAAMTU4NgQAAAAxNTg3 + BAAAADE1ODgEAAAAMTU4OQQAAAAxNTkwBAAAADE1OTEEAAAAMTU5MgQAAAAxNTkzBAAAADE1OTQE + AAAAMTU5NQQAAAAxNTk2BAAAADE1OTcEAAAAMTU5OAQAAAAxNTk5BAAAADE2MDAEAAAAMTYwMQQA + AAAxNjAyBAAAADE2MDMEAAAAMTYwNAQAAAAxNjA1BAAAADE2MDYEAAAAMTYwNwQAAAAxNjA4BAAA + ADE2MDkEAAAAMTYxMAQAAAAxNjExBAAAADE2MTIEAAAAMTYxMwQAAAAxNjE0BAAAADE2MTUEAAAA + MTYxNgQAAAAxNjE3BAAAADE2MTgEAAAAMTYxOQQAAAAxNjIwBAAAADE2MjEEAAAAMTYyMgQAAAAx + NjIzBAAAADE2MjQEAAAAMTYyNQQAAAAxNjI2BAAAADE2MjcEAAAAMTYyOAQAAAAxNjI5BAAAADE2 + MzAEAAAAMTYzMQQAAAAxNjMyBAAAADE2MzMEAAAAMTYzNAQAAAAxNjM1BAAAADE2MzYEAAAAMTYz + NwQAAAAxNjM4BAAAADE2MzkEAAAAMTY0MAQAAAAxNjQxBAAAADE2NDIEAAAAMTY0MwQAAAAxNjQ0 + BAAAADE2NDUEAAAAMTY0NgQAAAAxNjQ3BAAAADE2NDgEAAAAMTY0OQQAAAAxNjUwBAAAADE2NTEE + AAAAMTY1MgQAAAAxNjUzBAAAADE2NTQEAAAAMTY1NQQAAAAxNjU2BAAAADE2NTcEAAAAMTY1OAQA + AAAxNjU5BAAAADE2NjAEAAAAMTY2MQQAAAAxNjYyBAAAADE2NjMEAAAAMTY2NAQAAAAxNjY1BAAA + ADE2NjYEAAAAMTY2NwQAAAAxNjY4BAAAADE2NjkEAAAAMTY3MAQAAAAxNjcxBAAAADE2NzIEAAAA + MTY3MwQAAAAxNjc0BAAAADE2NzUEAAAAMTY3NgQAAAAxNjc3BAAAADE2NzgEAAAAMTY3OQQAAAAx + NjgwBAAAADE2ODEEAAAAMTY4MgQAAAAxNjgzBAAAADE2ODQEAAAAMTY4NQQAAAAxNjg2BAAAADE2 + ODcEAAAAMTY4OAQAAAAxNjg5BAAAADE2OTAEAAAAMTY5MQQAAAAxNjkyBAAAADE2OTMEAAAAMTY5 + NAQAAAAxNjk1BAAAADE2OTYEAAAAMTY5NwQAAAAxNjk4BAAAADE2OTkEAAAAMTcwMAQAAAAxNzAx + BAAAADE3MDIEAAAAMTcwMwQAAAAxNzA0BAAAADE3MDUEAAAAMTcwNgQAAAAxNzA3BAAAADE3MDgE + AAAAMTcwOQQAAAAxNzEwBAAAADE3MTEEAAAAMTcxMgQAAAAxNzEzBAAAADE3MTQEAAAAMTcxNQQA + AAAxNzE2BAAAADE3MTcEAAAAMTcxOAQAAAAxNzE5BAAAADE3MjAEAAAAMTcyMQQAAAAxNzIyBAAA + ADE3MjMEAAAAMTcyNAQAAAAxNzI1BAAAADE3MjYEAAAAMTcyNwQAAAAxNzI4BAAAADE3MjkEAAAA + MTczMAQAAAAxNzMxBAAAADE3MzIEAAAAMTczMwQAAAAxNzM0BAAAADE3MzUEAAAAMTczNgQAAAAx + NzM3BAAAADE3MzgEAAAAMTczOQQAAAAxNzQwBAAAADE3NDEEAAAAMTc0MgQAAAAxNzQzBAAAADE3 + NDQEAAAAMTc0NQQAAAAxNzQ2BAAAADE3NDcEAAAAMTc0OAQAAAAxNzQ5BAAAADE3NTAEAAAAMTc1 + MQQAAAAxNzUyBAAAADE3NTMEAAAAMTc1NAQAAAAxNzU1BAAAADE3NTYEAAAAMTc1NwQAAAAxNzU4 + BAAAADE3NTkEAAAAMTc2MAQAAAAxNzYxBAAAADE3NjIEAAAAMTc2MwQAAAAxNzY0BAAAADE3NjUE + AAAAMTc2NgQAAAAxNzY3BAAAADE3NjgEAAAAMTc2OQQAAAAxNzcwBAAAADE3NzEEAAAAMTc3MgQA + AAAxNzczBAAAADE3NzQEAAAAMTc3NQQAAAAxNzc2BAAAADE3NzcEAAAAMTc3OAQAAAAxNzc5BAAA + ADE3ODAEAAAAMTc4MQQAAAAxNzgyBAAAADE3ODMEAAAAMTc4NAQAAAAxNzg1BAAAADE3ODYEAAAA + MTc4NwQAAAAxNzg4BAAAADE3ODkEAAAAMTc5MAQAAAAxNzkxBAAAADE3OTIEAAAAMTc5MwQAAAAx + Nzk0BAAAADE3OTUEAAAAMTc5NgQAAAAxNzk3BAAAADE3OTgEAAAAMTc5OQQAAAAxODAwBAAAADE4 + MDEEAAAAMTgwMgQAAAAxODAzBAAAADE4MDQEAAAAMTgwNQQAAAAxODA2BAAAADE4MDcEAAAAMTgw + OAQAAAAxODA5BAAAADE4MTAEAAAAMTgxMQQAAAAxODEyBAAAADE4MTMEAAAAMTgxNAQAAAAxODE1 + BAAAADE4MTYEAAAAMTgxNwQAAAAxODE4BAAAADE4MTkEAAAAMTgyMAQAAAAxODIxBAAAADE4MjIE + AAAAMTgyMwQAAAAxODI0BAAAADE4MjUEAAAAMTgyNgQAAAAxODI3BAAAADE4MjgEAAAAMTgyOQQA + AAAxODMwBAAAADE4MzEEAAAAMTgzMgQAAAAxODMzBAAAADE4MzQEAAAAMTgzNQQAAAAxODM2BAAA + ADE4MzcEAAAAMTgzOAQAAAAxODM5BAAAADE4NDAEAAAAMTg0MQQAAAAxODQyBAAAADE4NDMEAAAA + MTg0NAQAAAAxODQ1BAAAADE4NDYEAAAAMTg0NwQAAAAxODQ4BAAAADE4NDkEAAAAMTg1MAQAAAAx + ODUxBAAAADE4NTIEAAAAMTg1MwQAAAAxODU0BAAAADE4NTUEAAAAMTg1NgQAAAAxODU3BAAAADE4 + NTgEAAAAMTg1OQQAAAAxODYwBAAAADE4NjEEAAAAMTg2MgQAAAAxODYzBAAAADE4NjQEAAAAMTg2 + NQQAAAAxODY2BAAAADE4NjcEAAAAMTg2OAQAAAAxODY5BAAAADE4NzAEAAAAMTg3MQQAAAAxODcy + BAAAADE4NzMEAAAAMTg3NAQAAAAxODc1BAAAADE4NzYEAAAAMTg3NwQAAAAxODc4BAAAADE4NzkE + AAAAMTg4MAQAAAAxODgxBAAAADE4ODIEAAAAMTg4MwQAAAAxODg0BAAAADE4ODUEAAAAMTg4NgQA + AAAxODg3BAAAADE4ODgEAAAAMTg4OQQAAAAxODkwBAAAADE4OTEEAAAAMTg5MgQAAAAxODkzBAAA + ADE4OTQEAAAAMTg5NQQAAAAxODk2BAAAADE4OTcEAAAAMTg5OAQAAAAxODk5BAAAADE5MDAEAAAA + MTkwMQQAAAAxOTAyBAAAADE5MDMEAAAAMTkwNAQAAAAxOTA1BAAAADE5MDYEAAAAMTkwNwQAAAAx + OTA4BAAAADE5MDkEAAAAMTkxMAQAAAAxOTExBAAAADE5MTIEAAAAMTkxMwQAAAAxOTE0BAAAADE5 + MTUEAAAAMTkxNgQAAAAxOTE3BAAAADE5MTgEAAAAMTkxOQQAAAAxOTIwBAAAADE5MjEEAAAAMTky + MgQAAAAxOTIzBAAAADE5MjQEAAAAMTkyNQQAAAAxOTI2BAAAADE5MjcEAAAAMTkyOAQAAAAxOTI5 + BAAAADE5MzAEAAAAMTkzMQQAAAAxOTMyBAAAADE5MzMEAAAAMTkzNAQAAAAxOTM1BAAAADE5MzYE + AAAAMTkzNwQAAAAxOTM4BAAAADE5MzkEAAAAMTk0MAQAAAAxOTQxBAAAADE5NDIEAAAAMTk0MwQA + AAAxOTQ0BAAAADE5NDUEAAAAMTk0NgQAAAAxOTQ3BAAAADE5NDgEAAAAMTk0OQQAAAAxOTUwBAAA + ADE5NTEEAAAAMTk1MgQAAAAxOTUzBAAAADE5NTQEAAAAMTk1NQQAAAAxOTU2BAAAADE5NTcEAAAA + MTk1OAQAAAAxOTU5BAAAADE5NjAEAAAAMTk2MQQAAAAxOTYyBAAAADE5NjMEAAAAMTk2NAQAAAAx + OTY1BAAAADE5NjYEAAAAMTk2NwQAAAAxOTY4BAAAADE5NjkEAAAAMTk3MAQAAAAxOTcxBAAAADE5 + NzIEAAAAMTk3MwQAAAAxOTc0BAAAADE5NzUEAAAAMTk3NgQAAAAxOTc3BAAAADE5NzgEAAAAMTk3 + OQQAAAAxOTgwBAAAADE5ODEEAAAAMTk4MgQAAAAxOTgzBAAAADE5ODQEAAAAMTk4NQQAAAAxOTg2 + BAAAADE5ODcEAAAAMTk4OAQAAAAxOTg5BAAAADE5OTAEAAAAMTk5MQQAAAAxOTkyBAAAADE5OTME + AAAAMTk5NAQAAAAxOTk1BAAAADE5OTYEAAAAMTk5NwQAAAAxOTk4BAAAADE5OTkVABWO+gEVjvoB + LBXQDxUAFQYVBhwYDHp6bGd5eGE1LjR5YRgMMDExY3FhbjQueXpzFgAW0A8YDHp6bGd5eGE1LjR5 + YRgMMDExY3FhbjQueXpzAAAAAwAAANAPAQwAAAB2MWtnNWhtci5maGoMAAAAZG5zdGNwbHYuZWRr + DAAAAG1ta3lucHR0Lmw0awwAAAB5c3E1d2NrZy5idG8MAAAAcHJlZXpmdGwubXEzDAAAAGdmdXg0 + MWF2LmNvegwAAABnaHpnMmNqZS4yaDEMAAAAM2R0dngwMWkuZ2tyDAAAAGV1emQxYjQxLmJxMgwA + AAA0YXRkMnpuby5nNDEMAAAAeWtkc240dWkuYjNlDAAAAHRud2tmaXNkLnFqNQwAAAB2ZmtpbGsy + dS4xYjQMAAAAdWN0MnIzdG0ubjEwDAAAAGRjdHdocWNvLnZnegwAAABhc2hvYXZvMS5vamYMAAAA + dWdzcWJicHMuNXQyDAAAADBwcHlyNGVoLmhtcQwAAABsNWRheHZ1cy5wcDIMAAAAa3d3MTFwMmEu + ZHhvDAAAAHNobWx6YzNpLnpkMAwAAABraTJva2FteC5hc2QMAAAAaTFiYnUyd2IuZGpqDAAAADJ5 + dnZ1ZnRsLm1lcQwAAABmZzB4Y2xoay5odGgMAAAAY2l6cHh1c20ubDQzDAAAAGFtcnRlMGxhLjJ0 + cwwAAAA1ZDUzZWY1NC5tMHkMAAAAcmxpczR4NG4ubXp6DAAAAHp5aGRjdnZsLnhieAwAAAB4ZDR3 + MGZxZi5sMHMMAAAAdnFzeWFoNDAuYmFuDAAAAGtvYW1raWJxLmtvcgwAAABzNHBtdTI0dC5ia3AM + AAAAMzE1ZzI0aGsucTQ0DAAAAHN3aDVxZmVnLnduagwAAAB3Z2Z4d3dmNC5jMmsMAAAAMWpwMmls + d3IubDVzDAAAAGNvcW90NHU1LmhncQwAAABsaXgzZ2dmaS5leG0MAAAAcnhlbnNva3UuamlmDAAA + AGUya2d5aWQ0LmYwYwwAAABkZWs1NHB4bC5pYmoMAAAAdTRpMDNiYXAubjJ4DAAAADVqd3Yyc2M1 + LjJydAwAAAB1ZzR6NGxtcC4xMzAMAAAAMW5lMXVjbmgua2gzDAAAADQzb3N5cjVuLmpzaQwAAAB1 + NWpicGFmMi5mcjAMAAAAbWMxY2FvYmcuMW9xDAAAAGJlemVteHZyLmlhZwwAAABleHJ0Z2xhMS4x + dTEMAAAAb21waWxlYWwucjFnDAAAAGg0bXoxdmFiLmJlbgwAAAByZ3BkYWx2dy5kaXgMAAAANW1p + b2NiNWsuaHR0DAAAAGt0c25mdnBlLnEwZQwAAABjNDFoYWV5Yi5zdW4MAAAAaHVobGZpdTMubG5q + DAAAADBlb2F2Y3BvLmxwNQwAAABrajQ1ZXpyeC5tZTIMAAAAYXNtejVvNW0ueXVtDAAAAHN5ZGJq + cG9uLmRmeQwAAAB5dHc1Y3FtaS5iZGMMAAAAcTN6M3JlamQuMHRmDAAAAG8zdHB2cmJkLmtncAwA + AABpbWp1MWcxay40bWQMAAAAaGVwdzF0ankuZGRyDAAAADJic2NpYWd6LmF1ZAwAAABwdWN5bWFl + di5xajAMAAAAb29ncmtlY3kuMGdiDAAAAHZnMXBjNHd6LmFoeAwAAAB3ZHRkcXRnYy5oNXAMAAAA + Y2FieHdwbzAub3pxDAAAADIxcWFjYnRwLmlpdgwAAABqMHltdWJpYS40amwMAAAAMmUzeWliNXku + b294DAAAAGIxMjF0YnlvLjFtZgwAAAAyZWVpeXRteC5jMmEMAAAAaXdramt2djQudWcyDAAAAGh4 + aGgwb3gwLmh4ZwwAAABkcWFpanYyZi5mYTQMAAAAejJ2YjNqbWEudjUzDAAAAHBzNHZqdHhwLnNj + NAwAAAAzMHlyMW1kZS5lZGMMAAAAeGlhZ2UzazQuZTRlDAAAADRoNG93YWFiLmh5cAwAAABiejR0 + M2xkYy5ybnIMAAAANHFhZ2cwY3ouMG12DAAAAHB4aWxodWtxLm9jcAwAAAB6c2hjMXAxeC5yY2wM + AAAAMWphMXlzNW0uYXFnDAAAAHQ1ZGh0c2txLnVpdgwAAAB4cm5mZGJveS5mdmEMAAAAdnp6MDJw + YWQuMHdrDAAAAHB2eHNpNXRwLnFzdAwAAAB5MnZhdG1iMS5vZTUMAAAAYW1taWp6bjAuYXMxDAAA + AGt3dnVlMG0yLm01cQwAAABiNDVyYzF2di5xZjQMAAAAdWJwMDBxYWYuNDNzDAAAAHdybXpvaTFu + Lm1yZAwAAAB6NDBpY3hmMS54YTQMAAAAY241eXkxaDUuYWh0DAAAAGRkbjNmaXF0LmR6YwwAAABv + dXJ4ZTJrcS5mam4MAAAANXgzMXpwM2MuZ2pqDAAAAGdtMW5oZXBzLmJzYgwAAABmbWZ4cnRsZS5j + MXQMAAAAenZwYW1hc3kuemRwDAAAAHV0empqb2VmLnBscgwAAAB2Z3l3bmt2Zi5hNHMMAAAAY2lu + eG0zYXouYXkyDAAAAGp6YnF5czBtLmdzZwwAAAAxeGltM2lwdS4xYmsMAAAAYTRzZDU0aW0ueWIz + DAAAAGV6YXQwZ2dsLnVqMgwAAAB2cWxmM25sMy5ieGUMAAAAYXFjNXUzeHouNW5pDAAAAGlxYWYw + eHZuLmQ1bwwAAAB3YzJyM3pmdi5zY3AMAAAAbHJxbHp1bmIuMW90DAAAADFvY2FnM2Y1LnBxbQwA + AAB6YmIxaDJ5Yy5kZGoMAAAAbWFreDB4c2oud2NpDAAAADNyZ3RmamdsLmg0cAwAAAB1M2hyMGFn + NC5ndHQMAAAAcjRqZmlxdTIuZmJpDAAAAGllaXoyNTBqLmswdgwAAAB1cjR4YjFtcC56dmUMAAAA + MjVuZ3FqeWgueWp2DAAAAGQwZDRyYnJmLjVnagwAAAAxb2ZjaGZkNC53NGwMAAAAa25sYXRpYWcu + eTV2DAAAAGtyb3dza2xkLm5sYgwAAABlZWl1Mnhnbi5ldWQMAAAAbGVyeWt1dWUuYnl4DAAAAG9u + eDEwa2dnLnVnawwAAAB3Z2NlYjIwYS5jcm4MAAAAb3NycHMyczQucG95DAAAAHkyc2FtZTR4LmZx + cwwAAABkc2kydGRsMi5rdHUMAAAAc3FyMHAyNGcuMTJrDAAAAG1zcmt0ejNoLnJuaAwAAAB1YjR1 + dmNpbC5ocjAMAAAANTFxb2tiNGEuc29vDAAAAHVxcDR2dWhsLnZleAwAAAB4aHExcTVrbC5ydDEM + AAAAZ3h3aDNzdnQubjFvDAAAAGYza20ycXNwLmdtdgwAAAAxaHJjcHI1ZC5hc24MAAAAMXp5MzB6 + M2EubXpsDAAAAGhvc2R5b2ozLnJnNAwAAAA1anRoam14ZC5kZXYMAAAAdmhreTVrMGkuYm9pDAAA + AG5tcGVsdjEzLjIxNQwAAAA0ZXp5czFmZy5mcnQMAAAAYWNlYmtlMTUuMzJlDAAAAHdtbXBobjNw + LjNidQwAAABidHNmZXJpcS5naXIMAAAAeWQwbzJ1emsubHpwDAAAAGwzbmdsYXQyLjIzeAwAAABy + NGdob3hxYi5veHgMAAAAdnp2dG9vMXEucXJzDAAAADRoa3djbmRnLmVvYwwAAAB6MDFjMm55ei55 + ZHoMAAAAem1vcjExeDQucTAyDAAAAGI1eHZ0YjMzLjFxbAwAAABxcjNjbXluNS5vcGUMAAAAbTVj + dmJoMnouYjF2DAAAAGJrMWZybG4zLmp4cQwAAAB5c3pleWdkbS5zZjIMAAAAbWJ3Z2xiNTQuZWRi + DAAAAHFjMWJseTNuLjMxZQwAAABhamMwaWtycy56dXYMAAAAc2VjYm5yankuMXdpDAAAADUydWFs + aGFwLml5MwwAAAA0b2pzcXlyay4wcmwMAAAAeWxrNG9udncuc2JwDAAAAGNjNTJhdmh1LnAxZQwA + AABvdmF1ZmVoZi50bHIMAAAAdzJmbGZtYWYuc2RsDAAAAHZhY2tvaWN0LnZ3YgwAAAB5dHRhaHdi + eS4waGUMAAAAcHpiY3I1ZGkud3U1DAAAAGluajBueGpiLmkxdAwAAABleGZoeWIzby4ya3oMAAAA + NTFuY295dDQubGxjDAAAAHFkamUzbmZiLjFyMAwAAABkeHl5NTRtei4wcDAMAAAAZm9iZXcwbHgu + bnViDAAAAHB2ZDJjamdhLmhnYQwAAAAwcHNhMWJmNC5qejAMAAAAaXVsM2d6eGouem9tDAAAAHY0 + MG5rZXByLmlycgwAAAB0MWIxcmQwZi56YmoMAAAAemJ2NWJncTAuMjB2DAAAAGhkb3UwbTBpLnlv + dwwAAAAzZTFzaDQxay5pbWwMAAAAZW12b3pjeG4ubGtsDAAAAGwycHp1MXBrLnBnbAwAAABjMWhv + cXJtZi5na3EMAAAAeG1ma3R4M3Iua3g0DAAAAHB5NXR2eWFtLmRsegwAAABkZ2l1ZXlmbS5taXMM + AAAAZG5wZzN0ZGMueGhjDAAAAHV6d256Y3FhLm94egwAAAB0YXoxdm5kci5uNHAMAAAAdGFwdnB0 + aHIueXdzDAAAAGRwMXk1anZ0Lmc1dQwAAAA0M2V1dnFkZC51emkMAAAAMDIwbG0xMGgud3dlDAAA + AGNkM2dtbWVpLmwxZgwAAAB4ZW1tM2VkcS54enQMAAAANHV3M3d4dHUubnAxDAAAADNjbGtrdmQy + LnJsbgwAAAB1NHRpajN4ZS5vY20MAAAANWdicTFxaHouM3dyDAAAAGpvZXJnd3cyLm5mMgwAAAB2 + MnVqbXd0bi5pZngMAAAAc3lkb3hrZncuZ253DAAAAGJ1dzE0bGQ1LmdmcwwAAAB3M2FrbGVxdS52 + Z2kMAAAAY2NwaDF3ZDIueGR5DAAAADBnMG9vcW4zLnZwaQwAAABjcmFmMGYwbC5icWQMAAAAcHBl + ZnVobjAuM2hmDAAAAGljemt4NHozLmhjaAwAAABncTRhY25laC5pYW8MAAAAbWQ1cXRwbXcub3pt + DAAAAG5jY3ZtZTMwLndvagwAAABpbWVyYW5yaC54aTUMAAAAb2J4ZXZsdXIuZjBlDAAAADVoZ3p1 + c3ZrLmVlYgwAAABzazA0Y215bC5keXoMAAAANHh1cXZ2M3ouaWMxDAAAAHZveHV1b2ZxLm1jcQwA + AAB0djUzc21idy5hbTAMAAAAcHU0azJ2aXYuMHJyDAAAAGtubHNvaW1uLnZsdgwAAABlMGQ0NGo0 + ei53NG4MAAAAcDBoaWZ3dDEudjVtDAAAAHJoY2F6c3FzLmx2aAwAAABheWFtY2RicS5zMHkMAAAA + Ynh1Z3FsbDEubTFlDAAAADB4Y3V4b2ZtLm94dgwAAAB2cXZ2bXdjcS5sMzEMAAAAaG5mbzRwd2Iu + cjBiDAAAAHV1eDNmaHBzLmw1MQwAAABpNWpoeWJncy5tdGkMAAAAb3pmNXIza2Eudnh2DAAAAGR6 + dDR4bmNwLmJldQwAAABqNGpnNDRlYS5jM3IMAAAAYmlvajVxYXguNGNlDAAAAHVtdDAwcXZyLjJm + bwwAAABhZXprenJwby5mZ3cMAAAAZG40ZmJxNHcuajF4DAAAAGRkeXp2bnFkLmNtcgwAAABhbXIy + ZWx1Mi5yaGcMAAAAZmY0cTJiemkuc20xDAAAADU0aXZ2ancwLnFiZQwAAAAwMWVid2p0bi53eXkM + AAAAaGJ1bWRqZGkuYmZ5DAAAAGxsdmNlMTBhLnF0ZQwAAAAxeXF6MXN1Yi4wb2YMAAAAa3RsbXh4 + ZTUucHJjDAAAAGM0NGMzemd4Lmd4dAwAAABwd3h2MnJibC4zY3gMAAAAMjFuNWl1bm4ubzFiDAAA + AHNpM2JnYmUxLm5hdAwAAAB3cXRieWkzeS5td2IMAAAAcDBrd2NkcGkucHphDAAAAG53dnRjcWIw + LmMwYwwAAAA1eTRmbnIzZi5wZHgMAAAAeWlxdHdlenkuZjExDAAAAHJwbnZuenpyLm40cgwAAABu + a3ExdXExZi53MmsMAAAAZ3cxbHBjbmYueTN2DAAAADBwbHVhbDJ1LmpkMgwAAAB1a2RsMzAwZC5z + b3AMAAAAd2NubG92aHcuMWxiDAAAAGNwZXVjcjN6LnZ6egwAAABic2tqemJnYy41ajQMAAAANDNk + eml5ZHYubXZpDAAAAHd5anJ5d3FrLmtycgwAAABieTF0NHVucC54YmsMAAAAaWloZWVmbWYudnFt + DAAAADJrdWZ6eWtxLmE1MgwAAABkaG01eDFkMi50dmQMAAAAbmc0NGVoNDMuZzV4DAAAAGp6cGZt + M21qLnJreAwAAABwcXR1bHdwMS5iYXUMAAAAYmlwaWlvemcucjBpDAAAAGxyYzJnNHNrLnJudwwA + AAA0NWhnZHhxZS5scHEMAAAAd3B4emZoZWQubDUxDAAAAHg0MTJuand6LmJ4eQwAAABwdGZieWxj + Yy5tYnEMAAAAeXA0eHNuZ3guZXlvDAAAAG16NTJ5cXAwLnBkZQwAAAByajJyZGhhei5za3QMAAAA + Y3pobjJzZ3Iub2J6DAAAAHFveGVweWE0LnR4MgwAAAB6bDRoZXBuby55eTIMAAAAYWh1cHFwMHou + d2NlDAAAAHltMzBuajF3LnAydAwAAAAzcDBubzNvYy5xNG4MAAAAMGZncXVya3MuY2RhDAAAAHh3 + MGFxY3VyLnEycAwAAAB6a2ZzZnRveC4xYWUMAAAAbHZoZ3gyZ2wuZ2wzDAAAAHlmcnRtamViLnhz + cwwAAABoYTBqb25jeS5hNWoMAAAAc3VqNXl1NG0uMmV0DAAAAHZqb3NnMDI0LmswdwwAAABxcGx0 + cXd1cS5vbWYMAAAANGZhcjBnd3ouemJsDAAAAGNibGVrY2Z6LmxkbQwAAABlMHF1dm5qYi5rbGYM + AAAAZnp3NW12cjQuNHNqDAAAADJpbGN0MzVtLnpucQwAAABxb2FrZnk0dy4xeWMMAAAAZ3N2bDA1 + bnIuZGVvDAAAADRud2kzb3l2LnVybgwAAABheDMyZ2N1by5sanEMAAAANG5xMnBvY2YuM2RwDAAA + AHlncHNodmJ0LjNmcAwAAABrZjEwZTVqdy5iYjIMAAAAMHoxbTFjNGoud3l0DAAAAG9waWt3aWpo + LnM0egwAAABkZmhydTQway52eXEMAAAAem1zemMxcWIuZG51DAAAAGF5NW5rMTN4LnJmdwwAAABl + bDFjajBtaC5kZGYMAAAAbmNrdGh4bDIua2ZoDAAAAGtuZnoxMTVlLmU1awwAAABoZGt3NWdnai5h + Zm0MAAAAczN4c2FtbHcuZG55DAAAAHUwZDFxbWRlLm9ubgwAAAAyMnlodDV0cy40eHEMAAAAbXpt + MGl2ZXkudTEzDAAAAGExNG8yd3p2LmowbAwAAABwZzBuMzI0ZC5mejIMAAAAdGkxM2M1MW8uNXps + DAAAAHphYnYxaTVjLmJiegwAAAB0ZWh3cHJldi55bjIMAAAAenpsZ3l4YTUuNHlhDAAAADVjNTI1 + MGNmLmZzeQwAAAB6dGFzcms1dC5peWoMAAAAdDBuNW5uZXAudnNhDAAAAG55dmVvc3gwLndvcAwA + AABsZ3hjZHRoMC5hbWEMAAAAdGIwb3FwM2wuZXZ3DAAAAGRlY2J1azEzLmxwZQwAAABzZnFjNXJ3 + eS5uZGYMAAAAMnQ1M2p5NWEua2lqDAAAAG12Z2hqdW8xLmdpagwAAAB4MWZodmlrby5wcnoMAAAA + czM1eWVmZ3AuYXVqDAAAAG1vZ2FhYm15Lm9sbQwAAABzZGo0M2g1bS5iZXEMAAAAdHZyaDRuM2wu + a3hxDAAAAGNka3oycnd0LnUxcAwAAAB4enkwaHZvci5nMHEMAAAAbWpscWlrc2wuYml1DAAAAHgz + cWZxNTFxLnh3ZQwAAAAwemZwYWVlYy5rNTIMAAAAY2wzM2xwZWoudGc1DAAAADUxcTRxa2duLmw1 + dAwAAABiNHZucjNqby41d3gMAAAAMXVmb2YxZ3UuYjJoDAAAAG1rbTJ0a2h0LnhheQwAAAA0bWJx + bjVyNC52MGsMAAAAcXZxb2NjeXkuZnlnDAAAADRqbHgwamkxLndqcAwAAABmenlyNXlmbS5wZG8M + AAAAbTVyeXI0ZG4ubGZoDAAAAGxsMXFidHF4LnRidwwAAABtbDQ0em90NC5yaG0MAAAAbjNqcDV2 + Zm8ubjV1DAAAAHh4eW91cm8wLnA0cAwAAABkY2s1MXRwdi5jcWwMAAAAcmRvMmxxYnEueXFsDAAA + AGx2cnEzb2ZjLml2dwwAAABmaHY0MDJyaS55ZWIMAAAAM2h2ZXYxbWsucXdkDAAAAGp2bnRvZWY1 + LnJueQwAAABieXVzeW1kdS5wc2gMAAAAb2lib2x2cHAucGplDAAAAGZ5NGFnMGgzLmR6ZAwAAABx + ZmlleHpsZy5mMngMAAAAd3V3Yno1anYucHZ6DAAAAG9qNHJoNXN4LmgwawwAAAA0Mm52c2k1dS4y + ZG8MAAAAMnZ4dTVsZGMua295DAAAAHdsbGxxdXptLmR4NQwAAAB3M3ZweGxyYy4yM3kMAAAAaGFp + Y2gza2YucmVnDAAAAHdvZGQ0b2V2LndpYgwAAAByMGFvc3FvaS5ocmwMAAAAc3k0YnhsdnIuYm14 + DAAAAHJuMXU1MXd1LmhsZQwAAABqazVudm90ei5iM2QMAAAAb3BvY3V3ZHUubjVwDAAAAGt2MHB2 + dWl3LnZidQwAAABoMjQwNXptZC5kNG0MAAAAdXl0aXZzZW8udjR3DAAAAHdiZ29md3phLmZxZAwA + AABzcWRpcHl1dS5qcXYMAAAANG8wYmp2YWcuNTM1DAAAAGdhNHBkc3BhLjUzYgwAAABiaXBiaTVj + di5ham4MAAAAeHhyaWEwaGMudHZmDAAAAHp2ZXVvZWN6LjRrZgwAAAB5eWFseW50Mi50bWEMAAAA + ZDIxbG41NTEubjBxDAAAAGp3Z29mbGYzLnlwMAwAAAA0bWpwc3diYy5udGcMAAAAMnMya3Bjc2Mu + cW16DAAAAGY0cjJmdnJ5Lnp1awwAAAA0eWhtcTVheS5uczEMAAAAd3hmMjVlZHAuaDBzDAAAAGUy + d3htMXF3Lm96egwAAAAyc2M0NXB3aS4xZXcMAAAAanEzbWp6NXcuYTRsDAAAADJncGFua2d4Lnlx + egwAAABreHNtZWNycS5oeGkMAAAAMnhlMmlzM28uMXUyDAAAADRpd3Brb3MzLnp4ZgwAAAAwbmI1 + Z2Nwbi5paWMMAAAAcm5tbDUwMDEuMWN5DAAAAGplcWZoZjBuLnltegwAAABzem9yc2tlcS54cjQM + AAAAbjRiMjB4MmUud2ZvDAAAAG11ZHlyYXUyLmtnMgwAAABoMTRhZG51ci5uc2cMAAAAZDJnNWdk + MjAucjR1DAAAADRneGNodXMxLjFvdAwAAABva2t0dnFmdC56cmsMAAAAbDBtbXp2bTMuZGd5DAAA + AGFtY3hma2J6LnZobAwAAABzMjNrYjNqYS5zbGcMAAAAZ3h4b20za3MueG5oDAAAAHV6bHdlbGo0 + LjRyagwAAAAycHRjMDJzay5jbGYMAAAANGtiZmMxemQuYXcxDAAAADBha2Roam5rLmF3bAwAAABs + bHNiM3Z3eS5lM3gMAAAAYmp3eHp5YzQueHNwDAAAAGdpM3lsdnJoLnRxcQwAAAAyc2l2YW5iaS5k + aHEMAAAAajIxZ2M0ZTMuM2NsDAAAAGJnMjRpZHh6Lm4yZQwAAAB2b3pnZXJmai5yd3YMAAAAY2py + MXcxdGouazRkDAAAAGdoam5seGVjLjFuegwAAAB2dnllcGFjNC5qNGIMAAAAYWF1dHN2YnYucWRu + DAAAAHF3ZTAwYzJiLjExcQwAAABjYXh2d3AzZy55bjIMAAAAbXJpYzF1YWQuMHJsDAAAAGp0YjVz + ZXF1LmF4MgwAAABzY3pyZ2xlaS5oZnUMAAAAamdseDB3aHcuZW1lDAAAAGR4cG4xa210LmtkbgwA + AABteHplZG1qaS5qcnIMAAAAa3FiajRjNWouYXp3DAAAADR0MnJhejFvLnlqaQwAAAB1a2Z3aTNl + Yy5nemQMAAAAemVjbmx6b2QubDM1DAAAAGVia2JhZDFyLnlocQwAAAB5am1xaXlycC5ld2sMAAAA + Z3ozaWVnNHAuaWQwDAAAADBlbmFvZXQ1LnVvagwAAAB2cGUzZTJwaS5qZHAMAAAANXVsdGpweWQu + c3RvDAAAAHQybmtiNHJlLmkwZwwAAAAxaHI0M2R0di4wc3EMAAAAMXdhZ2pyencueXRxDAAAAHlt + Y3VieWdrLnduZwwAAABibG1tMmdtei52Y2gMAAAAbXM0cm1lZjEuaGxlDAAAAHN1eG9vanFmLmxu + dQwAAABnamFpb2JiMC55cmkMAAAAa3lkbWU1c28ueHRiDAAAAHEydTN1cmh5Lm5zeQwAAAAxeTJm + bHp1dC53M2IMAAAAZnJwbHlwc24ubWFpDAAAADJsbm1hdzRwLnJnegwAAABzeXRkd2J2aS5jd3oM + AAAAeWc1ZTJmemYuZjFoDAAAAGZpYjVnaGZrLndlMAwAAABjMmJ1MTF6eC5jY2UMAAAAYnc1aW1p + YjUuMDJ3DAAAAHRhZTBmb2x5LmxlcAwAAABnamExM254eS41aGUMAAAAengzbWt0bzQuNXV5DAAA + AGVrend6bTMyLnNicwwAAABnZzB6MXh2Yi5mNG0MAAAAczIwNDVkaDQudGJqDAAAADUwcmdoYmhi + LnBzZgwAAAB5ajAxcHAzdS4za2oMAAAAcjFzaHdtYm8uYm9rDAAAADQxYWQxdWFlLmRhdQwAAABk + ZmJ2MDJ1ei4xZTUMAAAAenQyMGs1ZGwubzFqDAAAAGV3Y2Npemp6LnZ6YgwAAABzZDF5cTU1Yy41 + M2cMAAAAaDBpaGZmd2MuY3BvDAAAAHV1NDBraDBkLjR5ZwwAAABkam4yZXczMC5lbmIMAAAAc3Uw + emdtaG0uaHkzDAAAADRhaXRtd2psLnpyYgwAAABzYng1Zmlwbi40cHQMAAAAY2NjeGlicG0ud2Ji + DAAAADBieHVxeDJuLmEzMAwAAAB4ZWxqcGx5dC55dWUMAAAAcXQ0bTJnYXoueXlmDAAAADN4aWJp + Y3R4LmJ1ZAwAAABnb3BhMWY0cC5icnAMAAAAcG9oc2pmMDIuaGUyDAAAAGFmYm1peXU0Lnl6bwwA + AAAwbXJsZWdreC5wa2gMAAAAeW5sempseGwubmR2DAAAAGZ0eWNtMTJrLmJkdAwAAABzMWVpa3hv + dy5qZTIMAAAAaG9sYjNjZmkuYW9iDAAAAHp4dDNhc3IxLm40agwAAAB0ZnMxZmxrMy51ZGwMAAAA + ZTJ6ZWZkYzQuNHRvDAAAAHFhdXI1cTFvLmthdQwAAABoNHRjMjVxMi5yNWoMAAAAajBibmhleG8u + YWp0DAAAAHF0cm1rNXV0LjRpMwwAAABrZ2NuZnI0eC5oaGkMAAAAMHRweTNjdnQuaDNiDAAAAHlr + MHBicGkzLmxycgwAAABkand1ZGkyaS5rdW8MAAAAaDRxamo1aWQuNGZtDAAAAGxyNDB0amIwLm8y + cwwAAAB5emxjdTB5bi5pd2UMAAAAMHZlcDViZDUuZ2ZrDAAAAHhtenhibnJnLmY1egwAAAB6bnFx + bWp3dy52aHMMAAAAYmhycmx4YnUucHkwDAAAAGJvcHplMTNvLmxhagwAAABzNGJ4ejBndy51bTMM + AAAAMmgyb3J6ZHAudnUzDAAAAGpkZGs1bWZ1Lm9hawwAAABhdHExanlseC55cXkMAAAAMGV5Y3hm + d2wuaWY1DAAAADBnMmpqbXZnLnUyaQwAAABlMGJtdXJ5bi5sZnMMAAAAaWRmazE0aTUueG5tDAAA + AGVzMndic3RzLmxmdgwAAABycXVyb3V1aS54eGEMAAAAdGNxMXJjejIucXhtDAAAAGRoeXRzdXhl + LjU1egwAAAByMGNzeWxodC5samYMAAAAandndzNmM2MuaWZiDAAAAHptcGVvbHkzLjR0MwwAAAB6 + aXdtNHRtbS5yd2oMAAAAeXhrdnhneTEud3RhDAAAAHM0emF4cWE1LnpvcwwAAAB4cW5icmkwdC5t + bnEMAAAAMmV2M2MzZ3AuZHpmDAAAAHBxNXZiem9wLmh3agwAAABjM3Qzd3IzMy5qY3gMAAAANXhq + a2YxenMudTF2DAAAAGtkbXVvYzNrLmhodAwAAABhZ2RkY3V2bC5lbnoMAAAAMnZseXYyYzUucWp1 + DAAAADV2c29rY2I0LnBocgwAAABiZmZnNWZmby40dGQMAAAAa2thY25xdHkuMnptDAAAAHcxdGs0 + cjUxLjBkNAwAAABudG5sbmJ4bi51c2sMAAAAcHQya3pobGsucTRwDAAAAHd1cmcyb2IzLjVjMwwA + AAA1cXA0MmdvaS50cGMMAAAAdGQ1dnBla3EuM2p0DAAAAHdwd20zY24xLmNqegwAAABtYWZhdnRk + Yi56cXUMAAAAcWZuams0a28ucXpkDAAAAGRja2wxdTN3LmtwYQwAAAAxc3Jha291MS5rMG8MAAAA + YWRrazQwdXYuaXhkDAAAAG5uMXE0MGxvLnYzYgwAAABpY2JnbWF3by5hdnEMAAAAYTRkMWZleTIu + NXNvDAAAAGcxejVzMWJ4LndwYQwAAAAwZWt1djU1Mi5mczAMAAAAaWcxNTFwZngua29tDAAAAHZ6 + cGJocDBnLnBxZAwAAABmMDV3dmUzby5xZDQMAAAAMWV6dWt0cXIudmZvDAAAAHpxbXB1aTRtLjNq + MwwAAABjNXFkaXBpMy55cGsMAAAAbnhvZXhvbG4udHFtDAAAAG8wazQxcTFtLmwydgwAAAA1Ymp5 + dzRibi4xNDIMAAAAZjNkZGRwaXIuM3Z5DAAAAGpnbzR6YWhsLnZpNAwAAAA0ZGMzcnNteC4zMHEM + AAAAZGNxMGozNGEuY2dqDAAAAHBhNWRsa3NzLmNxcAwAAABobGhhZXFsMy5zMG4MAAAAZHlweWJ0 + cWQuMTBpDAAAAG50NDBmZ3JqLmRqeQwAAAAzZ3V1emJubC4yMnIMAAAAd2Qyc29zcHcuMWVpDAAA + ADRnNWxhc2liLmVyMQwAAAB6aGtlYmxkcC5xbW0MAAAANHl3cGRxMWguZHpuDAAAAGpjMmJ4aHRu + Lmw1cgwAAAB6djJqZG93cS5reW4MAAAAM2N0cXZncnkuMTFvDAAAADMyMjV2cXpoLms0YwwAAABr + b2gxMGMxMC5mbWEMAAAAemlieGR1ZXcuNXJjDAAAAHZ6cTFtYmFyLjEyZgwAAAB5cnBucDJnZy5p + NGsMAAAAY3N0MGl4cXUudmNnDAAAAG5veXkzY3p6LmwybwwAAABvdmdvaWs1cS54c3MMAAAAaW5x + cHhxMHoueWdpDAAAAGJ0ZGtnazBrLnZxcQwAAABjazFzbXlnei5xb3UMAAAAeXBicndkd3YubWFi + DAAAAGlmYml0ejJ1LmpvMAwAAAB5YXcwMjUxMi5xY2UMAAAAYWZ1cTNzb3IubGRiDAAAAHFyeXJh + MWFsLjJwdQwAAAAzZ3cwdGtrdy5sNWEMAAAAdXF2eGJ6NGMuenhmDAAAAGZ4cTVmZHplLnJ1bwwA + AAB6aTRvZGpvNS52Z2IMAAAAaXJpdmN5c20ubjVpDAAAAG15NHlwcmVoLnVueAwAAAB5c2ZocWpq + dS4xa2UMAAAAMmQwazA0MHkuM2kwDAAAAHk1NWhud29kLnp4dQwAAABsNXV2YTNoaC5oNHAMAAAA + cDVoYXZ2bmMubHo1DAAAAHhraHpzdmZsLjB4dwwAAAA1dDN3cjFhaC5hdW4MAAAAaHdwMDRjZnUu + bWFjDAAAAHJvNHkwMXc1LmowawwAAABrdXozYmN0ai40dG0MAAAAcnR3c2prd3MubzF3DAAAADNj + eXN0cGtuLnZ2YwwAAAAyZWR5M2hrcS56cmsMAAAAczN1emNqeTUueGF0DAAAADM1ZmNndWpwLjNs + dAwAAAAybmEzbXpmei5mY3oMAAAANXllcWphYXouMjBvDAAAADBna29pNHZwLmI1dwwAAAAyZHli + ZWN2NC5iYWUMAAAAaWQxbno1YTUua3d5DAAAAGZzc3ExM3FvLm9yZgwAAAAxeGJxMjBudi5oM2YM + AAAAazRsZ3F4aTAuZjN4DAAAAGgxYTR3MWZoLmRmbQwAAABqYTB0eDFiay53MDAMAAAAbDVmZnhk + YnkuMHVhDAAAADJzZTRhZ3B4Lmc1bAwAAABnbmdzY2l3MS53MGsMAAAAMWZ0bXhrYzMubGF0DAAA + AHNzbWF0b3JiLmJtbAwAAABseHlkajNidS4wYm0MAAAAaGwwaWkxc2suMHAzDAAAAGJhbnJ4MWwx + LmJ2bgwAAABwcnppcGd0eS51MXQMAAAANWFhNWwwcG8ucmUzDAAAAHQzM2VjeHI0LmJpaQwAAABp + bHh6MTRoMC5ycXAMAAAAdWFxMmx1MGsuemF2DAAAAGl6eTM1ZGZiLnluZgwAAABvMjJjYmV2bS5j + bGIMAAAAcGxsNGhjaXYuZHNnDAAAAHRidWl3c3RuLjJneAwAAABnM3dnMmJ0aS4yd2MMAAAAMWNv + NWY1MXIuMjRnDAAAAHNnZG56cXhkLjBqbgwAAAByenh6MTMzei55bW4MAAAAMm95ZWVpajEuMXVs + DAAAAHVmYnZ2MTRjLjBhNQwAAABhYWJnY2VtaC5iZm4MAAAAMXd1eGJhZncubHp6DAAAADFwdDEy + ZGxxLmxzdQwAAAAybjJ2d2U0bi51ajAMAAAAdTFnZ3YzdzAuaHkzDAAAAGlua2kxbXB3LmhkMgwA + AABrc3V5bWx6by5reHgMAAAAbWt4enR0cWMubXR5DAAAADNiNGI1czR0Lnd2bwwAAAB5enVoaGdw + NS5oZnQMAAAAbjNneWM0cTUuZzMwDAAAAGVndW9ldHg0LmNtMAwAAABta2JobmJyZS51djUMAAAA + eWt5eHYwbjQuc3NmDAAAAGw0bmhhYWFsLnFnbQwAAAB6b3hlMGVnZC50MXkMAAAAZnZhbXQycWou + MWVlDAAAAG16Y2J2b2ljLnE0cwwAAABoMmtrZGdsbi5vemYMAAAAYnpkbGhhMTEuczJyDAAAADVj + MWZxb2RmLnBxcwwAAABkanRxcXN1aS55MnYMAAAAYXVpdG13NWEuemZtDAAAAG9kdzEwZ3RsLmFx + NAwAAAB4cHJkdDFwcS52NW0MAAAAbG1qcWtycXYuYjFuDAAAAHBhY21pcjJnLnBkNAwAAABvbGdo + M2F3Zi5qanAMAAAAeXF6bG9uMHQucnMwDAAAAHh6eHNpeGdvLnVocAwAAAB0emt1bG5jaS5ndGcM + AAAAd2tlamFwMHkuemZlDAAAAGwzYnQzb2UwLmxnbAwAAAB6YnVoYmNlci40d2QMAAAAMnFwcDNu + b2QuZmNnDAAAAHZ4M3IydHZ2Lnl1MAwAAAB6NHVidnQxby5xYWkMAAAAemNlc2JuZW4uM3ZyDAAA + ADV5Znh2ZHV1LmhtbwwAAABvbXdjajFoNS5zbnIMAAAAaTJuaG9rZGEuM21zDAAAAHc1aGxwYXg1 + Lms1ZQwAAAB2NHAzcHQ0Zy52Z2oMAAAAMzMwNXFtZGguZngzDAAAAHNycjV2a2liLjN0NQwAAAB2 + cHJ0Z3N6ai4yYWkMAAAAY2dva3pqc2EuYWdwDAAAAGk0MGFzeDN4LjAybQwAAABnMGgxZ3d5aC4y + NDAMAAAAZWIwczBoaGYucjByDAAAAHlscnFua21nLndyZwwAAAA0c3Ayd3J2My40bzIMAAAAcXE1 + Z2ZyZ2YuZTRkDAAAAHprMjF4aHRxLnM1bwwAAAA0aWh3NXEzcC5zMDQMAAAAZmRxdmdmNG8udGxs + DAAAAGYxdnlnbmQzLnF3MwwAAAB4bGN6cWV0Mi5maXoMAAAAamVpNXl0NGEuNHVhDAAAAHJmNGti + ZmdmLndxegwAAAB4bnNoYWJ0aS5oYnQMAAAAenhwcnN4cnkuaGJ6DAAAADFnYWI1dW1kLnN5ZAwA + AABvdm1uem01MS5sNXYMAAAAd3BlZGF0NWcub2thDAAAAGp4YjV3aDU0LjVnZAwAAAAxYTIyZXBj + cS4xMnoMAAAAM2VucDFsaHYueDVhDAAAAGRtd29ocGdpLnJuYgwAAABqdmZ1MGRwMC4weXUMAAAA + Zmt6aHVwcjIudGx1DAAAAGN6Z2l3emV4LmRqYgwAAABxcGptM201ei56dmIMAAAAMHd1d2VobW4u + bW9hDAAAAHkxZ3FtajEzLnFkZAwAAABoc2pwYWlkdS40eWwMAAAAaG52cHdyMWUuaTRrDAAAAHNt + dG1yZHlmLnYwawwAAABrdXBlb3hqbi5mMzAMAAAAZW9ucGNubnguYmIzDAAAAGRvdmh5MXd4Lmhl + YgwAAAAydHRuMXRjby5nZmgMAAAAMmhkbzQ0bjAucmRiDAAAAGVpZTF1dmJtLmxkZgwAAABqenBl + dXduay4wZjQMAAAAZDIxZjVjenYudWN4DAAAAHB5aWZmaTRxLnlxNAwAAABtZXNsNXRldy40dmYM + AAAAc3ZyMDFjcHEudWduDAAAAGpvemx1Mmp4LnJnZwwAAAB4cGhoZWEycy5rbG0MAAAAbnJ3cTVt + NWkuMmx5DAAAAGlqZ3Nnc3Q0LjBmbwwAAAA0dWdmbHVmei5xdGUMAAAAeHkxZG4xMWkucDBsDAAA + AGR0dHdvY2R1LjNuNAwAAABxYW9xMGdhaS5uMW0MAAAAbHNncnB3bXcuemsxDAAAAGUxMHhwb2Jx + LmZnbwwAAAAzbGMydGo0aC5lemIMAAAAa3d3azBydjUuMm8xDAAAAHAya3ZhZGNpLmpkYgwAAAB4 + cmR2bW5sbi52MXcMAAAAYXowYm51bG4ua3drDAAAAGNtaXF5NHZqLmFlMwwAAAAxbmNmMmEwbC5s + MXQMAAAAMzVhM2ZmcmIuZmFnDAAAAGh4bHJpZDIwLmNhbQwAAABhczNwcHNmdS5xd2IMAAAAdjBp + MXZ6ZXguZXduDAAAAHczcHNqZ21iLnYxZwwAAAB4angyNG9uZy56bGYMAAAAM3RnbzFnZnAuYnIx + DAAAAGkxaDJ1b2hqLmt3NQwAAAB4ZGp6YWIway53eXEMAAAAZGphMnowMjEuNTJpDAAAAHBxdHpo + cmNkLm93cgwAAABobXZkaXdndy4wb2cMAAAAM2d5aGd0YzMuanBkDAAAAHgxYWxnZGVuLnd0dgwA + AABqYjBrcGhneC51MHgMAAAAa2kxMjRpdmQuMHhqDAAAAHkxYnpyb3p1LmZqaQwAAABtM20xZGIz + di5ka2IMAAAAZDAzbHB2cWYuaHl3DAAAAHdvcmZyZnhuLjJ0agwAAABjMnJxemk0bC5kdXIMAAAA + MjNoMmtraHEuc2h6DAAAAGxjeXl3Y2ZrLmZjegwAAABleWQ0M2NyYy41d2kMAAAAMmhycWdzM28u + amkyDAAAADJ0eTR1a2tsLjVjcwwAAAB3aHJnbmQ1Yi5lYTAMAAAAamcxa2J2Y2cuYXR2DAAAADFq + cWFyemhiLmNyYgwAAAAwdWhkbWY0NS5meW4MAAAAamIzYW9tMm8uMGhtDAAAAHR1cnppcTRvLmpi + bgwAAAB5c2d0dHN4aS5ucHcMAAAAcDN0eHVtcXIubWFzDAAAAHZqemVlanEzLmsydwwAAABmcG01 + bmdrcy52eDAMAAAAbXBzMXRtcXguM3VvDAAAADVoajFsajJkLnp5cAwAAABtMXhnb3oyay50Z3IM + AAAAZHNpcXpvdGgucnFqDAAAAHFxb3B5d3R5LmhoaQwAAABjaXVsYWtzdC5wdXEMAAAAeWdvNGJ1 + MmsuMnVnDAAAAGZtY2ticm5vLnIxYgwAAABobGhhaDRuby5wcncMAAAAZGI1dm92cGoudXFzDAAA + ADM1MnpoM3h5LjJhYgwAAAAzY3poa3VvMC5penMMAAAAM2YxanljZzMuajB2DAAAAGtiZHIwdzR1 + LmdtdAwAAAB6eDNhNHZsYS51c2sMAAAAc2J1ZmZibjQubzRwDAAAADJjMGZ2c2UzLmt2eQwAAABw + ZWN4MzNjMS56MDQMAAAAa21zYjFrNDIuNXBqDAAAAGNwM3ZianZ0LnU1egwAAAAwbDRkbWhxdC40 + eG4MAAAAYWwzM2piY2MuZ3hrDAAAADNxaXBqeHYxLnhhMAwAAABlaTVjZ3BiMi5qdWEMAAAAZTVv + dWNnd2subW1mDAAAAGVqZmpzMGhzLm1jbAwAAAAzaXhuZWt4bS54d28MAAAAdGRybWdoenoudGNi + DAAAAHU0dzFldjNnLnJ5ZAwAAAByY3Bta3p3ai5lcXcMAAAANWVrbG41MHcuNXM0DAAAAHh4NWx6 + djBtLnV3bQwAAAAwMTFjcWFuNC55enMMAAAAa25iY3JwYmwuZmx6DAAAADUzbXo1d2dvLnVsbQwA + AAB6eTByMGxzci5zMjIMAAAAYWhudGJ4ajQuYmJtDAAAADQybDF3MnlhLmJzawwAAAB6bzAxNW01 + aS50enQMAAAAYmF2YWZndTIucTNlDAAAAGdzaHljcXFmLjFpZAwAAAA1YjAzNXN5ZC4ybGcMAAAA + bHlpZnkwaG4uenh3DAAAAGV0YXBwbGdqLmczYQwAAABtNGp0dXFhdi52ZWwMAAAAcWRvb2t5eHYu + cnF3DAAAAG9qeGI0YWhsLnZjMAwAAAA0eWNqeXd6ai54aWQMAAAAc3ZqdW1uNXguNW9rDAAAADJ4 + amZsMmZhLm9icgwAAABjd2Z0aHBqdC5hcXMMAAAAdGM1M2JxeHMueDRjDAAAAHl4amRnYnYwLm9s + aAwAAABpcW5tNWh0ZS4wd2IMAAAAbGcxeXprNHEuNWpkDAAAADUydG92MmJ6LjVkaAwAAABrYzNx + MWtjMS5qeXkMAAAAZ3NoeHYzeTEuNXR6DAAAAGpydWtvMGNxLnJnYwwAAABlamFydmxmaS41cDUM + AAAAeXgwdGpzeWEudGlvDAAAAGd1MGJ5NGJvLm4weAwAAABrejVraDB6Yy53MGQMAAAAejNwZm5h + eHIuaWF6DAAAAHR5ZWI1YnFqLjN4NQwAAAByd3RzbmJuci56dGEMAAAANXB0dDV5MzQuNWhiDAAA + AGhwZmVwMHFyLmFrYwwAAABiaW5rMHlyYy5qd28MAAAAcG1lenBzamwuamQzDAAAADAzbGVnZHRv + Lmx5eQwAAABiMzNkYWk0My5xZXgMAAAAZGxudHFnbzMubm5xDAAAAGJnaGJoa2VlLnRpcwwAAABy + azBxM3Btay5jNDAMAAAAdnFjYXIxMnUua3pwDAAAADVid2FvZmJuLnVwZwwAAABiZzJremkwZS53 + cGkMAAAAZTU0enhjZnMubHR5DAAAAGVtMDVzMnBpLm90MQwAAABvYjFwMzUxbi54bWwMAAAAMGh1 + a3R4d2wuamV0DAAAAGtiaDF6dWxpLnA0MgwAAAB6b2NrZWtiYy5razAMAAAAd2pwYTFjMnIudmpx + DAAAAHVkbmFrMXlhLjJscQwAAABub3BsenF1Zy5mY3cMAAAAZWdhZGJpd2EuZnN0DAAAAGJ2cmdk + M2tjLmZmYgwAAABybnhrY2xnMy5lcmEMAAAAZGhmeGtoMmwud2wxDAAAAGFyZHBqbDNoLmJvYwwA + AAB3a2gzdWZ4eC55cGoMAAAAeXF5YmJoc2IucHVpDAAAAHRtem41cXlzLnpwcwwAAABhNGVjZ3Zi + Yi51cGsMAAAAem5wMmd6MmoubGwwDAAAAHJwMHJhcHhuLml6cwwAAAA0dHp0ZWRtbC54ZXcMAAAA + bXEwc2Zqem0uMGVyDAAAAGN5Mmx3b24xLnczdwwAAAAxbHV1cm5xYi5qcGUMAAAAc2g1dmdrM3Au + aHRqDAAAAHRlMHduYm8yLmJwcgwAAABteTB1czE1NC51b24MAAAANWhmZ2NyanYuanJjDAAAAGlm + bGxpMHl3LjNkegwAAAA1eWJkamdnaC5nZHEMAAAAY2dqaWFvejUubHlpDAAAAHJ6aXc1MnViLmM0 + ZQwAAAByNG1xMGlzZC4xbWMMAAAAeGJlcW5md2UuNG8xDAAAAHVwdTF3aXN4LnhvaQwAAABoaGd4 + ZHk0cS5qYnYMAAAAcXYzYjBqb3AubWFhDAAAAGR3NGQxZ2hjLjRjMQwAAAB0cHNrdnJyMS5iczAM + AAAAb3h0Z2N1M2EuZ2gxDAAAADNvamFlaGJ4Lm9rdAwAAAA1dGF0ZmZwby50ZjQMAAAAdHM1c2N5 + c2gudnZwDAAAAHZncGE0amJrLnRrMgwAAABoamN3c2RvMi5waHEMAAAAenZjMTMwZ3UuYjBpDAAA + AHI0MWdrb2pjLnV3ZwwAAABnaHUwazByai40c24MAAAAZnoxM294NGgubWxqDAAAAHMyZ2JjNXBq + LnF0NQwAAAAycHJmb3Joai5mYjEMAAAAdm1icm1ucWIubGIzDAAAAG1paHd2NWxhLmFmZwwAAABk + dGhuZTRubC5saWsMAAAAdHh0dmZpdHcubnN2DAAAAGtiZHR5bjBsLjFhaAwAAABzYmhia3Zhcy5q + Mm8MAAAAMHJzcDRtZmouZXU1DAAAAHpxeXVzZTV3LmY1NQwAAABrZ2dwZzVzZS5nYWgMAAAAbTRj + aTV4ZXoubGxhDAAAADEycTFkenBxLmEwdAwAAABuY3lyMnFzcy41YTAMAAAAc2Zka2VsbW0ub3Ry + DAAAADRiZWdsMmZtLnh4NQwAAABzdnBscXhoNS5lbHcMAAAAZ3hhb2FhbzUuZjJ4DAAAAG40c3Jk + Zmt6LjQ0dgwAAABicHR2Mm5qbS50amwMAAAAY2FoZTBidGouYTBzDAAAAGFkMGQ1dHJoLm0xdgwA + AAB6dWswMW9hMy51M3gMAAAAcXoxdm90c2kudXg1DAAAAGl2YnduMjAxLnIzNQwAAABveW5xaHd2 + YS5ldGIMAAAAdHAzaG56b3AuZjVlDAAAAGpxcjJwbHhqLmVldAwAAABnY2FvZG1iYS56M3MMAAAA + andxejBkaGEueGF1DAAAAGt2MG5oMmZuLnZpYgwAAAAxNGMzanEwdS5peW0MAAAAM212NGw0NTEu + aGFsDAAAAGVxbXpoMXgwLjJuawwAAABzbGZub2xndy5jMHgMAAAAdTNmZjVkdmIuZHozDAAAADVw + NWZlMm9pLnN6cwwAAAAybmF5ajFwdS5pZG8MAAAAZDAycmZiM24udjBhDAAAAGx3eW40d29jLmQy + ZwwAAAAycjR6bHRubS5qMWoMAAAAMWlyYnltMnQudXdpDAAAADBheHpqbTRwLjJycQwAAABibXR1 + eTBsaS4yZ2UVABWO+gEVjvoBLBXQDxUAFQYVBhwYDHp6bGd5eGE1LjR5YRgMMDExY3FhbjQueXpz + FgAW0A8YDHp6bGd5eGE1LjR5YRgMMDExY3FhbjQueXpzAAAAAwAAANAPAQwAAAB2MWtnNWhtci5m + aGoMAAAAZG5zdGNwbHYuZWRrDAAAAG1ta3lucHR0Lmw0awwAAAB5c3E1d2NrZy5idG8MAAAAcHJl + ZXpmdGwubXEzDAAAAGdmdXg0MWF2LmNvegwAAABnaHpnMmNqZS4yaDEMAAAAM2R0dngwMWkuZ2ty + DAAAAGV1emQxYjQxLmJxMgwAAAA0YXRkMnpuby5nNDEMAAAAeWtkc240dWkuYjNlDAAAAHRud2tm + aXNkLnFqNQwAAAB2ZmtpbGsydS4xYjQMAAAAdWN0MnIzdG0ubjEwDAAAAGRjdHdocWNvLnZnegwA + AABhc2hvYXZvMS5vamYMAAAAdWdzcWJicHMuNXQyDAAAADBwcHlyNGVoLmhtcQwAAABsNWRheHZ1 + cy5wcDIMAAAAa3d3MTFwMmEuZHhvDAAAAHNobWx6YzNpLnpkMAwAAABraTJva2FteC5hc2QMAAAA + aTFiYnUyd2IuZGpqDAAAADJ5dnZ1ZnRsLm1lcQwAAABmZzB4Y2xoay5odGgMAAAAY2l6cHh1c20u + bDQzDAAAAGFtcnRlMGxhLjJ0cwwAAAA1ZDUzZWY1NC5tMHkMAAAAcmxpczR4NG4ubXp6DAAAAHp5 + aGRjdnZsLnhieAwAAAB4ZDR3MGZxZi5sMHMMAAAAdnFzeWFoNDAuYmFuDAAAAGtvYW1raWJxLmtv + cgwAAABzNHBtdTI0dC5ia3AMAAAAMzE1ZzI0aGsucTQ0DAAAAHN3aDVxZmVnLnduagwAAAB3Z2Z4 + d3dmNC5jMmsMAAAAMWpwMmlsd3IubDVzDAAAAGNvcW90NHU1LmhncQwAAABsaXgzZ2dmaS5leG0M + AAAAcnhlbnNva3UuamlmDAAAAGUya2d5aWQ0LmYwYwwAAABkZWs1NHB4bC5pYmoMAAAAdTRpMDNi + YXAubjJ4DAAAADVqd3Yyc2M1LjJydAwAAAB1ZzR6NGxtcC4xMzAMAAAAMW5lMXVjbmgua2gzDAAA + ADQzb3N5cjVuLmpzaQwAAAB1NWpicGFmMi5mcjAMAAAAbWMxY2FvYmcuMW9xDAAAAGJlemVteHZy + LmlhZwwAAABleHJ0Z2xhMS4xdTEMAAAAb21waWxlYWwucjFnDAAAAGg0bXoxdmFiLmJlbgwAAABy + Z3BkYWx2dy5kaXgMAAAANW1pb2NiNWsuaHR0DAAAAGt0c25mdnBlLnEwZQwAAABjNDFoYWV5Yi5z + dW4MAAAAaHVobGZpdTMubG5qDAAAADBlb2F2Y3BvLmxwNQwAAABrajQ1ZXpyeC5tZTIMAAAAYXNt + ejVvNW0ueXVtDAAAAHN5ZGJqcG9uLmRmeQwAAAB5dHc1Y3FtaS5iZGMMAAAAcTN6M3JlamQuMHRm + DAAAAG8zdHB2cmJkLmtncAwAAABpbWp1MWcxay40bWQMAAAAaGVwdzF0ankuZGRyDAAAADJic2Np + YWd6LmF1ZAwAAABwdWN5bWFldi5xajAMAAAAb29ncmtlY3kuMGdiDAAAAHZnMXBjNHd6LmFoeAwA + AAB3ZHRkcXRnYy5oNXAMAAAAY2FieHdwbzAub3pxDAAAADIxcWFjYnRwLmlpdgwAAABqMHltdWJp + YS40amwMAAAAMmUzeWliNXkub294DAAAAGIxMjF0YnlvLjFtZgwAAAAyZWVpeXRteC5jMmEMAAAA + aXdramt2djQudWcyDAAAAGh4aGgwb3gwLmh4ZwwAAABkcWFpanYyZi5mYTQMAAAAejJ2YjNqbWEu + djUzDAAAAHBzNHZqdHhwLnNjNAwAAAAzMHlyMW1kZS5lZGMMAAAAeGlhZ2UzazQuZTRlDAAAADRo + NG93YWFiLmh5cAwAAABiejR0M2xkYy5ybnIMAAAANHFhZ2cwY3ouMG12DAAAAHB4aWxodWtxLm9j + cAwAAAB6c2hjMXAxeC5yY2wMAAAAMWphMXlzNW0uYXFnDAAAAHQ1ZGh0c2txLnVpdgwAAAB4cm5m + ZGJveS5mdmEMAAAAdnp6MDJwYWQuMHdrDAAAAHB2eHNpNXRwLnFzdAwAAAB5MnZhdG1iMS5vZTUM + AAAAYW1taWp6bjAuYXMxDAAAAGt3dnVlMG0yLm01cQwAAABiNDVyYzF2di5xZjQMAAAAdWJwMDBx + YWYuNDNzDAAAAHdybXpvaTFuLm1yZAwAAAB6NDBpY3hmMS54YTQMAAAAY241eXkxaDUuYWh0DAAA + AGRkbjNmaXF0LmR6YwwAAABvdXJ4ZTJrcS5mam4MAAAANXgzMXpwM2MuZ2pqDAAAAGdtMW5oZXBz + LmJzYgwAAABmbWZ4cnRsZS5jMXQMAAAAenZwYW1hc3kuemRwDAAAAHV0empqb2VmLnBscgwAAAB2 + Z3l3bmt2Zi5hNHMMAAAAY2lueG0zYXouYXkyDAAAAGp6YnF5czBtLmdzZwwAAAAxeGltM2lwdS4x + YmsMAAAAYTRzZDU0aW0ueWIzDAAAAGV6YXQwZ2dsLnVqMgwAAAB2cWxmM25sMy5ieGUMAAAAYXFj + NXUzeHouNW5pDAAAAGlxYWYweHZuLmQ1bwwAAAB3YzJyM3pmdi5zY3AMAAAAbHJxbHp1bmIuMW90 + DAAAADFvY2FnM2Y1LnBxbQwAAAB6YmIxaDJ5Yy5kZGoMAAAAbWFreDB4c2oud2NpDAAAADNyZ3Rm + amdsLmg0cAwAAAB1M2hyMGFnNC5ndHQMAAAAcjRqZmlxdTIuZmJpDAAAAGllaXoyNTBqLmswdgwA + AAB1cjR4YjFtcC56dmUMAAAAMjVuZ3FqeWgueWp2DAAAAGQwZDRyYnJmLjVnagwAAAAxb2ZjaGZk + NC53NGwMAAAAa25sYXRpYWcueTV2DAAAAGtyb3dza2xkLm5sYgwAAABlZWl1Mnhnbi5ldWQMAAAA + bGVyeWt1dWUuYnl4DAAAAG9ueDEwa2dnLnVnawwAAAB3Z2NlYjIwYS5jcm4MAAAAb3NycHMyczQu + cG95DAAAAHkyc2FtZTR4LmZxcwwAAABkc2kydGRsMi5rdHUMAAAAc3FyMHAyNGcuMTJrDAAAAG1z + cmt0ejNoLnJuaAwAAAB1YjR1dmNpbC5ocjAMAAAANTFxb2tiNGEuc29vDAAAAHVxcDR2dWhsLnZl + eAwAAAB4aHExcTVrbC5ydDEMAAAAZ3h3aDNzdnQubjFvDAAAAGYza20ycXNwLmdtdgwAAAAxaHJj + cHI1ZC5hc24MAAAAMXp5MzB6M2EubXpsDAAAAGhvc2R5b2ozLnJnNAwAAAA1anRoam14ZC5kZXYM + AAAAdmhreTVrMGkuYm9pDAAAAG5tcGVsdjEzLjIxNQwAAAA0ZXp5czFmZy5mcnQMAAAAYWNlYmtl + MTUuMzJlDAAAAHdtbXBobjNwLjNidQwAAABidHNmZXJpcS5naXIMAAAAeWQwbzJ1emsubHpwDAAA + AGwzbmdsYXQyLjIzeAwAAAByNGdob3hxYi5veHgMAAAAdnp2dG9vMXEucXJzDAAAADRoa3djbmRn + LmVvYwwAAAB6MDFjMm55ei55ZHoMAAAAem1vcjExeDQucTAyDAAAAGI1eHZ0YjMzLjFxbAwAAABx + cjNjbXluNS5vcGUMAAAAbTVjdmJoMnouYjF2DAAAAGJrMWZybG4zLmp4cQwAAAB5c3pleWdkbS5z + ZjIMAAAAbWJ3Z2xiNTQuZWRiDAAAAHFjMWJseTNuLjMxZQwAAABhamMwaWtycy56dXYMAAAAc2Vj + Ym5yankuMXdpDAAAADUydWFsaGFwLml5MwwAAAA0b2pzcXlyay4wcmwMAAAAeWxrNG9udncuc2Jw + DAAAAGNjNTJhdmh1LnAxZQwAAABvdmF1ZmVoZi50bHIMAAAAdzJmbGZtYWYuc2RsDAAAAHZhY2tv + aWN0LnZ3YgwAAAB5dHRhaHdieS4waGUMAAAAcHpiY3I1ZGkud3U1DAAAAGluajBueGpiLmkxdAwA + AABleGZoeWIzby4ya3oMAAAANTFuY295dDQubGxjDAAAAHFkamUzbmZiLjFyMAwAAABkeHl5NTRt + ei4wcDAMAAAAZm9iZXcwbHgubnViDAAAAHB2ZDJjamdhLmhnYQwAAAAwcHNhMWJmNC5qejAMAAAA + aXVsM2d6eGouem9tDAAAAHY0MG5rZXByLmlycgwAAAB0MWIxcmQwZi56YmoMAAAAemJ2NWJncTAu + MjB2DAAAAGhkb3UwbTBpLnlvdwwAAAAzZTFzaDQxay5pbWwMAAAAZW12b3pjeG4ubGtsDAAAAGwy + cHp1MXBrLnBnbAwAAABjMWhvcXJtZi5na3EMAAAAeG1ma3R4M3Iua3g0DAAAAHB5NXR2eWFtLmRs + egwAAABkZ2l1ZXlmbS5taXMMAAAAZG5wZzN0ZGMueGhjDAAAAHV6d256Y3FhLm94egwAAAB0YXox + dm5kci5uNHAMAAAAdGFwdnB0aHIueXdzDAAAAGRwMXk1anZ0Lmc1dQwAAAA0M2V1dnFkZC51emkM + AAAAMDIwbG0xMGgud3dlDAAAAGNkM2dtbWVpLmwxZgwAAAB4ZW1tM2VkcS54enQMAAAANHV3M3d4 + dHUubnAxDAAAADNjbGtrdmQyLnJsbgwAAAB1NHRpajN4ZS5vY20MAAAANWdicTFxaHouM3dyDAAA + AGpvZXJnd3cyLm5mMgwAAAB2MnVqbXd0bi5pZngMAAAAc3lkb3hrZncuZ253DAAAAGJ1dzE0bGQ1 + LmdmcwwAAAB3M2FrbGVxdS52Z2kMAAAAY2NwaDF3ZDIueGR5DAAAADBnMG9vcW4zLnZwaQwAAABj + cmFmMGYwbC5icWQMAAAAcHBlZnVobjAuM2hmDAAAAGljemt4NHozLmhjaAwAAABncTRhY25laC5p + YW8MAAAAbWQ1cXRwbXcub3ptDAAAAG5jY3ZtZTMwLndvagwAAABpbWVyYW5yaC54aTUMAAAAb2J4 + ZXZsdXIuZjBlDAAAADVoZ3p1c3ZrLmVlYgwAAABzazA0Y215bC5keXoMAAAANHh1cXZ2M3ouaWMx + DAAAAHZveHV1b2ZxLm1jcQwAAAB0djUzc21idy5hbTAMAAAAcHU0azJ2aXYuMHJyDAAAAGtubHNv + aW1uLnZsdgwAAABlMGQ0NGo0ei53NG4MAAAAcDBoaWZ3dDEudjVtDAAAAHJoY2F6c3FzLmx2aAwA + AABheWFtY2RicS5zMHkMAAAAYnh1Z3FsbDEubTFlDAAAADB4Y3V4b2ZtLm94dgwAAAB2cXZ2bXdj + cS5sMzEMAAAAaG5mbzRwd2IucjBiDAAAAHV1eDNmaHBzLmw1MQwAAABpNWpoeWJncy5tdGkMAAAA + b3pmNXIza2Eudnh2DAAAAGR6dDR4bmNwLmJldQwAAABqNGpnNDRlYS5jM3IMAAAAYmlvajVxYXgu + NGNlDAAAAHVtdDAwcXZyLjJmbwwAAABhZXprenJwby5mZ3cMAAAAZG40ZmJxNHcuajF4DAAAAGRk + eXp2bnFkLmNtcgwAAABhbXIyZWx1Mi5yaGcMAAAAZmY0cTJiemkuc20xDAAAADU0aXZ2ancwLnFi + ZQwAAAAwMWVid2p0bi53eXkMAAAAaGJ1bWRqZGkuYmZ5DAAAAGxsdmNlMTBhLnF0ZQwAAAAxeXF6 + MXN1Yi4wb2YMAAAAa3RsbXh4ZTUucHJjDAAAAGM0NGMzemd4Lmd4dAwAAABwd3h2MnJibC4zY3gM + AAAAMjFuNWl1bm4ubzFiDAAAAHNpM2JnYmUxLm5hdAwAAAB3cXRieWkzeS5td2IMAAAAcDBrd2Nk + cGkucHphDAAAAG53dnRjcWIwLmMwYwwAAAA1eTRmbnIzZi5wZHgMAAAAeWlxdHdlenkuZjExDAAA + AHJwbnZuenpyLm40cgwAAABua3ExdXExZi53MmsMAAAAZ3cxbHBjbmYueTN2DAAAADBwbHVhbDJ1 + LmpkMgwAAAB1a2RsMzAwZC5zb3AMAAAAd2NubG92aHcuMWxiDAAAAGNwZXVjcjN6LnZ6egwAAABi + c2tqemJnYy41ajQMAAAANDNkeml5ZHYubXZpDAAAAHd5anJ5d3FrLmtycgwAAABieTF0NHVucC54 + YmsMAAAAaWloZWVmbWYudnFtDAAAADJrdWZ6eWtxLmE1MgwAAABkaG01eDFkMi50dmQMAAAAbmc0 + NGVoNDMuZzV4DAAAAGp6cGZtM21qLnJreAwAAABwcXR1bHdwMS5iYXUMAAAAYmlwaWlvemcucjBp + DAAAAGxyYzJnNHNrLnJudwwAAAA0NWhnZHhxZS5scHEMAAAAd3B4emZoZWQubDUxDAAAAHg0MTJu + and6LmJ4eQwAAABwdGZieWxjYy5tYnEMAAAAeXA0eHNuZ3guZXlvDAAAAG16NTJ5cXAwLnBkZQwA + AAByajJyZGhhei5za3QMAAAAY3pobjJzZ3Iub2J6DAAAAHFveGVweWE0LnR4MgwAAAB6bDRoZXBu + by55eTIMAAAAYWh1cHFwMHoud2NlDAAAAHltMzBuajF3LnAydAwAAAAzcDBubzNvYy5xNG4MAAAA + MGZncXVya3MuY2RhDAAAAHh3MGFxY3VyLnEycAwAAAB6a2ZzZnRveC4xYWUMAAAAbHZoZ3gyZ2wu + Z2wzDAAAAHlmcnRtamViLnhzcwwAAABoYTBqb25jeS5hNWoMAAAAc3VqNXl1NG0uMmV0DAAAAHZq + b3NnMDI0LmswdwwAAABxcGx0cXd1cS5vbWYMAAAANGZhcjBnd3ouemJsDAAAAGNibGVrY2Z6Lmxk + bQwAAABlMHF1dm5qYi5rbGYMAAAAZnp3NW12cjQuNHNqDAAAADJpbGN0MzVtLnpucQwAAABxb2Fr + Znk0dy4xeWMMAAAAZ3N2bDA1bnIuZGVvDAAAADRud2kzb3l2LnVybgwAAABheDMyZ2N1by5sanEM + AAAANG5xMnBvY2YuM2RwDAAAAHlncHNodmJ0LjNmcAwAAABrZjEwZTVqdy5iYjIMAAAAMHoxbTFj + NGoud3l0DAAAAG9waWt3aWpoLnM0egwAAABkZmhydTQway52eXEMAAAAem1zemMxcWIuZG51DAAA + AGF5NW5rMTN4LnJmdwwAAABlbDFjajBtaC5kZGYMAAAAbmNrdGh4bDIua2ZoDAAAAGtuZnoxMTVl + LmU1awwAAABoZGt3NWdnai5hZm0MAAAAczN4c2FtbHcuZG55DAAAAHUwZDFxbWRlLm9ubgwAAAAy + MnlodDV0cy40eHEMAAAAbXptMGl2ZXkudTEzDAAAAGExNG8yd3p2LmowbAwAAABwZzBuMzI0ZC5m + ejIMAAAAdGkxM2M1MW8uNXpsDAAAAHphYnYxaTVjLmJiegwAAAB0ZWh3cHJldi55bjIMAAAAenps + Z3l4YTUuNHlhDAAAADVjNTI1MGNmLmZzeQwAAAB6dGFzcms1dC5peWoMAAAAdDBuNW5uZXAudnNh + DAAAAG55dmVvc3gwLndvcAwAAABsZ3hjZHRoMC5hbWEMAAAAdGIwb3FwM2wuZXZ3DAAAAGRlY2J1 + azEzLmxwZQwAAABzZnFjNXJ3eS5uZGYMAAAAMnQ1M2p5NWEua2lqDAAAAG12Z2hqdW8xLmdpagwA + AAB4MWZodmlrby5wcnoMAAAAczM1eWVmZ3AuYXVqDAAAAG1vZ2FhYm15Lm9sbQwAAABzZGo0M2g1 + bS5iZXEMAAAAdHZyaDRuM2wua3hxDAAAAGNka3oycnd0LnUxcAwAAAB4enkwaHZvci5nMHEMAAAA + bWpscWlrc2wuYml1DAAAAHgzcWZxNTFxLnh3ZQwAAAAwemZwYWVlYy5rNTIMAAAAY2wzM2xwZWou + dGc1DAAAADUxcTRxa2duLmw1dAwAAABiNHZucjNqby41d3gMAAAAMXVmb2YxZ3UuYjJoDAAAAG1r + bTJ0a2h0LnhheQwAAAA0bWJxbjVyNC52MGsMAAAAcXZxb2NjeXkuZnlnDAAAADRqbHgwamkxLndq + cAwAAABmenlyNXlmbS5wZG8MAAAAbTVyeXI0ZG4ubGZoDAAAAGxsMXFidHF4LnRidwwAAABtbDQ0 + em90NC5yaG0MAAAAbjNqcDV2Zm8ubjV1DAAAAHh4eW91cm8wLnA0cAwAAABkY2s1MXRwdi5jcWwM + AAAAcmRvMmxxYnEueXFsDAAAAGx2cnEzb2ZjLml2dwwAAABmaHY0MDJyaS55ZWIMAAAAM2h2ZXYx + bWsucXdkDAAAAGp2bnRvZWY1LnJueQwAAABieXVzeW1kdS5wc2gMAAAAb2lib2x2cHAucGplDAAA + AGZ5NGFnMGgzLmR6ZAwAAABxZmlleHpsZy5mMngMAAAAd3V3Yno1anYucHZ6DAAAAG9qNHJoNXN4 + LmgwawwAAAA0Mm52c2k1dS4yZG8MAAAAMnZ4dTVsZGMua295DAAAAHdsbGxxdXptLmR4NQwAAAB3 + M3ZweGxyYy4yM3kMAAAAaGFpY2gza2YucmVnDAAAAHdvZGQ0b2V2LndpYgwAAAByMGFvc3FvaS5o + cmwMAAAAc3k0YnhsdnIuYm14DAAAAHJuMXU1MXd1LmhsZQwAAABqazVudm90ei5iM2QMAAAAb3Bv + Y3V3ZHUubjVwDAAAAGt2MHB2dWl3LnZidQwAAABoMjQwNXptZC5kNG0MAAAAdXl0aXZzZW8udjR3 + DAAAAHdiZ29md3phLmZxZAwAAABzcWRpcHl1dS5qcXYMAAAANG8wYmp2YWcuNTM1DAAAAGdhNHBk + c3BhLjUzYgwAAABiaXBiaTVjdi5ham4MAAAAeHhyaWEwaGMudHZmDAAAAHp2ZXVvZWN6LjRrZgwA + AAB5eWFseW50Mi50bWEMAAAAZDIxbG41NTEubjBxDAAAAGp3Z29mbGYzLnlwMAwAAAA0bWpwc3di + Yy5udGcMAAAAMnMya3Bjc2MucW16DAAAAGY0cjJmdnJ5Lnp1awwAAAA0eWhtcTVheS5uczEMAAAA + d3hmMjVlZHAuaDBzDAAAAGUyd3htMXF3Lm96egwAAAAyc2M0NXB3aS4xZXcMAAAAanEzbWp6NXcu + YTRsDAAAADJncGFua2d4LnlxegwAAABreHNtZWNycS5oeGkMAAAAMnhlMmlzM28uMXUyDAAAADRp + d3Brb3MzLnp4ZgwAAAAwbmI1Z2Nwbi5paWMMAAAAcm5tbDUwMDEuMWN5DAAAAGplcWZoZjBuLnlt + egwAAABzem9yc2tlcS54cjQMAAAAbjRiMjB4MmUud2ZvDAAAAG11ZHlyYXUyLmtnMgwAAABoMTRh + ZG51ci5uc2cMAAAAZDJnNWdkMjAucjR1DAAAADRneGNodXMxLjFvdAwAAABva2t0dnFmdC56cmsM + AAAAbDBtbXp2bTMuZGd5DAAAAGFtY3hma2J6LnZobAwAAABzMjNrYjNqYS5zbGcMAAAAZ3h4b20z + a3MueG5oDAAAAHV6bHdlbGo0LjRyagwAAAAycHRjMDJzay5jbGYMAAAANGtiZmMxemQuYXcxDAAA + ADBha2Roam5rLmF3bAwAAABsbHNiM3Z3eS5lM3gMAAAAYmp3eHp5YzQueHNwDAAAAGdpM3lsdnJo + LnRxcQwAAAAyc2l2YW5iaS5kaHEMAAAAajIxZ2M0ZTMuM2NsDAAAAGJnMjRpZHh6Lm4yZQwAAAB2 + b3pnZXJmai5yd3YMAAAAY2pyMXcxdGouazRkDAAAAGdoam5seGVjLjFuegwAAAB2dnllcGFjNC5q + NGIMAAAAYWF1dHN2YnYucWRuDAAAAHF3ZTAwYzJiLjExcQwAAABjYXh2d3AzZy55bjIMAAAAbXJp + YzF1YWQuMHJsDAAAAGp0YjVzZXF1LmF4MgwAAABzY3pyZ2xlaS5oZnUMAAAAamdseDB3aHcuZW1l + DAAAAGR4cG4xa210LmtkbgwAAABteHplZG1qaS5qcnIMAAAAa3FiajRjNWouYXp3DAAAADR0MnJh + ejFvLnlqaQwAAAB1a2Z3aTNlYy5nemQMAAAAemVjbmx6b2QubDM1DAAAAGVia2JhZDFyLnlocQwA + AAB5am1xaXlycC5ld2sMAAAAZ3ozaWVnNHAuaWQwDAAAADBlbmFvZXQ1LnVvagwAAAB2cGUzZTJw + aS5qZHAMAAAANXVsdGpweWQuc3RvDAAAAHQybmtiNHJlLmkwZwwAAAAxaHI0M2R0di4wc3EMAAAA + MXdhZ2pyencueXRxDAAAAHltY3VieWdrLnduZwwAAABibG1tMmdtei52Y2gMAAAAbXM0cm1lZjEu + aGxlDAAAAHN1eG9vanFmLmxudQwAAABnamFpb2JiMC55cmkMAAAAa3lkbWU1c28ueHRiDAAAAHEy + dTN1cmh5Lm5zeQwAAAAxeTJmbHp1dC53M2IMAAAAZnJwbHlwc24ubWFpDAAAADJsbm1hdzRwLnJn + egwAAABzeXRkd2J2aS5jd3oMAAAAeWc1ZTJmemYuZjFoDAAAAGZpYjVnaGZrLndlMAwAAABjMmJ1 + MTF6eC5jY2UMAAAAYnc1aW1pYjUuMDJ3DAAAAHRhZTBmb2x5LmxlcAwAAABnamExM254eS41aGUM + AAAAengzbWt0bzQuNXV5DAAAAGVrend6bTMyLnNicwwAAABnZzB6MXh2Yi5mNG0MAAAAczIwNDVk + aDQudGJqDAAAADUwcmdoYmhiLnBzZgwAAAB5ajAxcHAzdS4za2oMAAAAcjFzaHdtYm8uYm9rDAAA + ADQxYWQxdWFlLmRhdQwAAABkZmJ2MDJ1ei4xZTUMAAAAenQyMGs1ZGwubzFqDAAAAGV3Y2Npemp6 + LnZ6YgwAAABzZDF5cTU1Yy41M2cMAAAAaDBpaGZmd2MuY3BvDAAAAHV1NDBraDBkLjR5ZwwAAABk + am4yZXczMC5lbmIMAAAAc3UwemdtaG0uaHkzDAAAADRhaXRtd2psLnpyYgwAAABzYng1Zmlwbi40 + cHQMAAAAY2NjeGlicG0ud2JiDAAAADBieHVxeDJuLmEzMAwAAAB4ZWxqcGx5dC55dWUMAAAAcXQ0 + bTJnYXoueXlmDAAAADN4aWJpY3R4LmJ1ZAwAAABnb3BhMWY0cC5icnAMAAAAcG9oc2pmMDIuaGUy + DAAAAGFmYm1peXU0Lnl6bwwAAAAwbXJsZWdreC5wa2gMAAAAeW5sempseGwubmR2DAAAAGZ0eWNt + MTJrLmJkdAwAAABzMWVpa3hvdy5qZTIMAAAAaG9sYjNjZmkuYW9iDAAAAHp4dDNhc3IxLm40agwA + AAB0ZnMxZmxrMy51ZGwMAAAAZTJ6ZWZkYzQuNHRvDAAAAHFhdXI1cTFvLmthdQwAAABoNHRjMjVx + Mi5yNWoMAAAAajBibmhleG8uYWp0DAAAAHF0cm1rNXV0LjRpMwwAAABrZ2NuZnI0eC5oaGkMAAAA + MHRweTNjdnQuaDNiDAAAAHlrMHBicGkzLmxycgwAAABkand1ZGkyaS5rdW8MAAAAaDRxamo1aWQu + NGZtDAAAAGxyNDB0amIwLm8ycwwAAAB5emxjdTB5bi5pd2UMAAAAMHZlcDViZDUuZ2ZrDAAAAHht + enhibnJnLmY1egwAAAB6bnFxbWp3dy52aHMMAAAAYmhycmx4YnUucHkwDAAAAGJvcHplMTNvLmxh + agwAAABzNGJ4ejBndy51bTMMAAAAMmgyb3J6ZHAudnUzDAAAAGpkZGs1bWZ1Lm9hawwAAABhdHEx + anlseC55cXkMAAAAMGV5Y3hmd2wuaWY1DAAAADBnMmpqbXZnLnUyaQwAAABlMGJtdXJ5bi5sZnMM + AAAAaWRmazE0aTUueG5tDAAAAGVzMndic3RzLmxmdgwAAABycXVyb3V1aS54eGEMAAAAdGNxMXJj + ejIucXhtDAAAAGRoeXRzdXhlLjU1egwAAAByMGNzeWxodC5samYMAAAAandndzNmM2MuaWZiDAAA + AHptcGVvbHkzLjR0MwwAAAB6aXdtNHRtbS5yd2oMAAAAeXhrdnhneTEud3RhDAAAAHM0emF4cWE1 + LnpvcwwAAAB4cW5icmkwdC5tbnEMAAAAMmV2M2MzZ3AuZHpmDAAAAHBxNXZiem9wLmh3agwAAABj + M3Qzd3IzMy5qY3gMAAAANXhqa2YxenMudTF2DAAAAGtkbXVvYzNrLmhodAwAAABhZ2RkY3V2bC5l + bnoMAAAAMnZseXYyYzUucWp1DAAAADV2c29rY2I0LnBocgwAAABiZmZnNWZmby40dGQMAAAAa2th + Y25xdHkuMnptDAAAAHcxdGs0cjUxLjBkNAwAAABudG5sbmJ4bi51c2sMAAAAcHQya3pobGsucTRw + DAAAAHd1cmcyb2IzLjVjMwwAAAA1cXA0MmdvaS50cGMMAAAAdGQ1dnBla3EuM2p0DAAAAHdwd20z + Y24xLmNqegwAAABtYWZhdnRkYi56cXUMAAAAcWZuams0a28ucXpkDAAAAGRja2wxdTN3LmtwYQwA + AAAxc3Jha291MS5rMG8MAAAAYWRrazQwdXYuaXhkDAAAAG5uMXE0MGxvLnYzYgwAAABpY2JnbWF3 + by5hdnEMAAAAYTRkMWZleTIuNXNvDAAAAGcxejVzMWJ4LndwYQwAAAAwZWt1djU1Mi5mczAMAAAA + aWcxNTFwZngua29tDAAAAHZ6cGJocDBnLnBxZAwAAABmMDV3dmUzby5xZDQMAAAAMWV6dWt0cXIu + dmZvDAAAAHpxbXB1aTRtLjNqMwwAAABjNXFkaXBpMy55cGsMAAAAbnhvZXhvbG4udHFtDAAAAG8w + azQxcTFtLmwydgwAAAA1Ymp5dzRibi4xNDIMAAAAZjNkZGRwaXIuM3Z5DAAAAGpnbzR6YWhsLnZp + NAwAAAA0ZGMzcnNteC4zMHEMAAAAZGNxMGozNGEuY2dqDAAAAHBhNWRsa3NzLmNxcAwAAABobGhh + ZXFsMy5zMG4MAAAAZHlweWJ0cWQuMTBpDAAAAG50NDBmZ3JqLmRqeQwAAAAzZ3V1emJubC4yMnIM + AAAAd2Qyc29zcHcuMWVpDAAAADRnNWxhc2liLmVyMQwAAAB6aGtlYmxkcC5xbW0MAAAANHl3cGRx + MWguZHpuDAAAAGpjMmJ4aHRuLmw1cgwAAAB6djJqZG93cS5reW4MAAAAM2N0cXZncnkuMTFvDAAA + ADMyMjV2cXpoLms0YwwAAABrb2gxMGMxMC5mbWEMAAAAemlieGR1ZXcuNXJjDAAAAHZ6cTFtYmFy + LjEyZgwAAAB5cnBucDJnZy5pNGsMAAAAY3N0MGl4cXUudmNnDAAAAG5veXkzY3p6LmwybwwAAABv + dmdvaWs1cS54c3MMAAAAaW5xcHhxMHoueWdpDAAAAGJ0ZGtnazBrLnZxcQwAAABjazFzbXlnei5x + b3UMAAAAeXBicndkd3YubWFiDAAAAGlmYml0ejJ1LmpvMAwAAAB5YXcwMjUxMi5xY2UMAAAAYWZ1 + cTNzb3IubGRiDAAAAHFyeXJhMWFsLjJwdQwAAAAzZ3cwdGtrdy5sNWEMAAAAdXF2eGJ6NGMuenhm + DAAAAGZ4cTVmZHplLnJ1bwwAAAB6aTRvZGpvNS52Z2IMAAAAaXJpdmN5c20ubjVpDAAAAG15NHlw + cmVoLnVueAwAAAB5c2ZocWpqdS4xa2UMAAAAMmQwazA0MHkuM2kwDAAAAHk1NWhud29kLnp4dQwA + AABsNXV2YTNoaC5oNHAMAAAAcDVoYXZ2bmMubHo1DAAAAHhraHpzdmZsLjB4dwwAAAA1dDN3cjFh + aC5hdW4MAAAAaHdwMDRjZnUubWFjDAAAAHJvNHkwMXc1LmowawwAAABrdXozYmN0ai40dG0MAAAA + cnR3c2prd3MubzF3DAAAADNjeXN0cGtuLnZ2YwwAAAAyZWR5M2hrcS56cmsMAAAAczN1emNqeTUu + eGF0DAAAADM1ZmNndWpwLjNsdAwAAAAybmEzbXpmei5mY3oMAAAANXllcWphYXouMjBvDAAAADBn + a29pNHZwLmI1dwwAAAAyZHliZWN2NC5iYWUMAAAAaWQxbno1YTUua3d5DAAAAGZzc3ExM3FvLm9y + ZgwAAAAxeGJxMjBudi5oM2YMAAAAazRsZ3F4aTAuZjN4DAAAAGgxYTR3MWZoLmRmbQwAAABqYTB0 + eDFiay53MDAMAAAAbDVmZnhkYnkuMHVhDAAAADJzZTRhZ3B4Lmc1bAwAAABnbmdzY2l3MS53MGsM + AAAAMWZ0bXhrYzMubGF0DAAAAHNzbWF0b3JiLmJtbAwAAABseHlkajNidS4wYm0MAAAAaGwwaWkx + c2suMHAzDAAAAGJhbnJ4MWwxLmJ2bgwAAABwcnppcGd0eS51MXQMAAAANWFhNWwwcG8ucmUzDAAA + AHQzM2VjeHI0LmJpaQwAAABpbHh6MTRoMC5ycXAMAAAAdWFxMmx1MGsuemF2DAAAAGl6eTM1ZGZi + LnluZgwAAABvMjJjYmV2bS5jbGIMAAAAcGxsNGhjaXYuZHNnDAAAAHRidWl3c3RuLjJneAwAAABn + M3dnMmJ0aS4yd2MMAAAAMWNvNWY1MXIuMjRnDAAAAHNnZG56cXhkLjBqbgwAAAByenh6MTMzei55 + bW4MAAAAMm95ZWVpajEuMXVsDAAAAHVmYnZ2MTRjLjBhNQwAAABhYWJnY2VtaC5iZm4MAAAAMXd1 + eGJhZncubHp6DAAAADFwdDEyZGxxLmxzdQwAAAAybjJ2d2U0bi51ajAMAAAAdTFnZ3YzdzAuaHkz + DAAAAGlua2kxbXB3LmhkMgwAAABrc3V5bWx6by5reHgMAAAAbWt4enR0cWMubXR5DAAAADNiNGI1 + czR0Lnd2bwwAAAB5enVoaGdwNS5oZnQMAAAAbjNneWM0cTUuZzMwDAAAAGVndW9ldHg0LmNtMAwA + AABta2JobmJyZS51djUMAAAAeWt5eHYwbjQuc3NmDAAAAGw0bmhhYWFsLnFnbQwAAAB6b3hlMGVn + ZC50MXkMAAAAZnZhbXQycWouMWVlDAAAAG16Y2J2b2ljLnE0cwwAAABoMmtrZGdsbi5vemYMAAAA + YnpkbGhhMTEuczJyDAAAADVjMWZxb2RmLnBxcwwAAABkanRxcXN1aS55MnYMAAAAYXVpdG13NWEu + emZtDAAAAG9kdzEwZ3RsLmFxNAwAAAB4cHJkdDFwcS52NW0MAAAAbG1qcWtycXYuYjFuDAAAAHBh + Y21pcjJnLnBkNAwAAABvbGdoM2F3Zi5qanAMAAAAeXF6bG9uMHQucnMwDAAAAHh6eHNpeGdvLnVo + cAwAAAB0emt1bG5jaS5ndGcMAAAAd2tlamFwMHkuemZlDAAAAGwzYnQzb2UwLmxnbAwAAAB6YnVo + YmNlci40d2QMAAAAMnFwcDNub2QuZmNnDAAAAHZ4M3IydHZ2Lnl1MAwAAAB6NHVidnQxby5xYWkM + AAAAemNlc2JuZW4uM3ZyDAAAADV5Znh2ZHV1LmhtbwwAAABvbXdjajFoNS5zbnIMAAAAaTJuaG9r + ZGEuM21zDAAAAHc1aGxwYXg1Lms1ZQwAAAB2NHAzcHQ0Zy52Z2oMAAAAMzMwNXFtZGguZngzDAAA + AHNycjV2a2liLjN0NQwAAAB2cHJ0Z3N6ai4yYWkMAAAAY2dva3pqc2EuYWdwDAAAAGk0MGFzeDN4 + LjAybQwAAABnMGgxZ3d5aC4yNDAMAAAAZWIwczBoaGYucjByDAAAAHlscnFua21nLndyZwwAAAA0 + c3Ayd3J2My40bzIMAAAAcXE1Z2ZyZ2YuZTRkDAAAAHprMjF4aHRxLnM1bwwAAAA0aWh3NXEzcC5z + MDQMAAAAZmRxdmdmNG8udGxsDAAAAGYxdnlnbmQzLnF3MwwAAAB4bGN6cWV0Mi5maXoMAAAAamVp + NXl0NGEuNHVhDAAAAHJmNGtiZmdmLndxegwAAAB4bnNoYWJ0aS5oYnQMAAAAenhwcnN4cnkuaGJ6 + DAAAADFnYWI1dW1kLnN5ZAwAAABvdm1uem01MS5sNXYMAAAAd3BlZGF0NWcub2thDAAAAGp4YjV3 + aDU0LjVnZAwAAAAxYTIyZXBjcS4xMnoMAAAAM2VucDFsaHYueDVhDAAAAGRtd29ocGdpLnJuYgwA + AABqdmZ1MGRwMC4weXUMAAAAZmt6aHVwcjIudGx1DAAAAGN6Z2l3emV4LmRqYgwAAABxcGptM201 + ei56dmIMAAAAMHd1d2VobW4ubW9hDAAAAHkxZ3FtajEzLnFkZAwAAABoc2pwYWlkdS40eWwMAAAA + aG52cHdyMWUuaTRrDAAAAHNtdG1yZHlmLnYwawwAAABrdXBlb3hqbi5mMzAMAAAAZW9ucGNubngu + YmIzDAAAAGRvdmh5MXd4LmhlYgwAAAAydHRuMXRjby5nZmgMAAAAMmhkbzQ0bjAucmRiDAAAAGVp + ZTF1dmJtLmxkZgwAAABqenBldXduay4wZjQMAAAAZDIxZjVjenYudWN4DAAAAHB5aWZmaTRxLnlx + NAwAAABtZXNsNXRldy40dmYMAAAAc3ZyMDFjcHEudWduDAAAAGpvemx1Mmp4LnJnZwwAAAB4cGho + ZWEycy5rbG0MAAAAbnJ3cTVtNWkuMmx5DAAAAGlqZ3Nnc3Q0LjBmbwwAAAA0dWdmbHVmei5xdGUM + AAAAeHkxZG4xMWkucDBsDAAAAGR0dHdvY2R1LjNuNAwAAABxYW9xMGdhaS5uMW0MAAAAbHNncnB3 + bXcuemsxDAAAAGUxMHhwb2JxLmZnbwwAAAAzbGMydGo0aC5lemIMAAAAa3d3azBydjUuMm8xDAAA + AHAya3ZhZGNpLmpkYgwAAAB4cmR2bW5sbi52MXcMAAAAYXowYm51bG4ua3drDAAAAGNtaXF5NHZq + LmFlMwwAAAAxbmNmMmEwbC5sMXQMAAAAMzVhM2ZmcmIuZmFnDAAAAGh4bHJpZDIwLmNhbQwAAABh + czNwcHNmdS5xd2IMAAAAdjBpMXZ6ZXguZXduDAAAAHczcHNqZ21iLnYxZwwAAAB4angyNG9uZy56 + bGYMAAAAM3RnbzFnZnAuYnIxDAAAAGkxaDJ1b2hqLmt3NQwAAAB4ZGp6YWIway53eXEMAAAAZGph + MnowMjEuNTJpDAAAAHBxdHpocmNkLm93cgwAAABobXZkaXdndy4wb2cMAAAAM2d5aGd0YzMuanBk + DAAAAHgxYWxnZGVuLnd0dgwAAABqYjBrcGhneC51MHgMAAAAa2kxMjRpdmQuMHhqDAAAAHkxYnpy + b3p1LmZqaQwAAABtM20xZGIzdi5ka2IMAAAAZDAzbHB2cWYuaHl3DAAAAHdvcmZyZnhuLjJ0agwA + AABjMnJxemk0bC5kdXIMAAAAMjNoMmtraHEuc2h6DAAAAGxjeXl3Y2ZrLmZjegwAAABleWQ0M2Ny + Yy41d2kMAAAAMmhycWdzM28uamkyDAAAADJ0eTR1a2tsLjVjcwwAAAB3aHJnbmQ1Yi5lYTAMAAAA + amcxa2J2Y2cuYXR2DAAAADFqcWFyemhiLmNyYgwAAAAwdWhkbWY0NS5meW4MAAAAamIzYW9tMm8u + MGhtDAAAAHR1cnppcTRvLmpibgwAAAB5c2d0dHN4aS5ucHcMAAAAcDN0eHVtcXIubWFzDAAAAHZq + emVlanEzLmsydwwAAABmcG01bmdrcy52eDAMAAAAbXBzMXRtcXguM3VvDAAAADVoajFsajJkLnp5 + cAwAAABtMXhnb3oyay50Z3IMAAAAZHNpcXpvdGgucnFqDAAAAHFxb3B5d3R5LmhoaQwAAABjaXVs + YWtzdC5wdXEMAAAAeWdvNGJ1MmsuMnVnDAAAAGZtY2ticm5vLnIxYgwAAABobGhhaDRuby5wcncM + AAAAZGI1dm92cGoudXFzDAAAADM1MnpoM3h5LjJhYgwAAAAzY3poa3VvMC5penMMAAAAM2Yxanlj + ZzMuajB2DAAAAGtiZHIwdzR1LmdtdAwAAAB6eDNhNHZsYS51c2sMAAAAc2J1ZmZibjQubzRwDAAA + ADJjMGZ2c2UzLmt2eQwAAABwZWN4MzNjMS56MDQMAAAAa21zYjFrNDIuNXBqDAAAAGNwM3ZianZ0 + LnU1egwAAAAwbDRkbWhxdC40eG4MAAAAYWwzM2piY2MuZ3hrDAAAADNxaXBqeHYxLnhhMAwAAABl + aTVjZ3BiMi5qdWEMAAAAZTVvdWNnd2subW1mDAAAAGVqZmpzMGhzLm1jbAwAAAAzaXhuZWt4bS54 + d28MAAAAdGRybWdoenoudGNiDAAAAHU0dzFldjNnLnJ5ZAwAAAByY3Bta3p3ai5lcXcMAAAANWVr + bG41MHcuNXM0DAAAAHh4NWx6djBtLnV3bQwAAAAwMTFjcWFuNC55enMMAAAAa25iY3JwYmwuZmx6 + DAAAADUzbXo1d2dvLnVsbQwAAAB6eTByMGxzci5zMjIMAAAAYWhudGJ4ajQuYmJtDAAAADQybDF3 + MnlhLmJzawwAAAB6bzAxNW01aS50enQMAAAAYmF2YWZndTIucTNlDAAAAGdzaHljcXFmLjFpZAwA + AAA1YjAzNXN5ZC4ybGcMAAAAbHlpZnkwaG4uenh3DAAAAGV0YXBwbGdqLmczYQwAAABtNGp0dXFh + di52ZWwMAAAAcWRvb2t5eHYucnF3DAAAAG9qeGI0YWhsLnZjMAwAAAA0eWNqeXd6ai54aWQMAAAA + c3ZqdW1uNXguNW9rDAAAADJ4amZsMmZhLm9icgwAAABjd2Z0aHBqdC5hcXMMAAAAdGM1M2JxeHMu + eDRjDAAAAHl4amRnYnYwLm9saAwAAABpcW5tNWh0ZS4wd2IMAAAAbGcxeXprNHEuNWpkDAAAADUy + dG92MmJ6LjVkaAwAAABrYzNxMWtjMS5qeXkMAAAAZ3NoeHYzeTEuNXR6DAAAAGpydWtvMGNxLnJn + YwwAAABlamFydmxmaS41cDUMAAAAeXgwdGpzeWEudGlvDAAAAGd1MGJ5NGJvLm4weAwAAABrejVr + aDB6Yy53MGQMAAAAejNwZm5heHIuaWF6DAAAAHR5ZWI1YnFqLjN4NQwAAAByd3RzbmJuci56dGEM + AAAANXB0dDV5MzQuNWhiDAAAAGhwZmVwMHFyLmFrYwwAAABiaW5rMHlyYy5qd28MAAAAcG1lenBz + amwuamQzDAAAADAzbGVnZHRvLmx5eQwAAABiMzNkYWk0My5xZXgMAAAAZGxudHFnbzMubm5xDAAA + AGJnaGJoa2VlLnRpcwwAAAByazBxM3Btay5jNDAMAAAAdnFjYXIxMnUua3pwDAAAADVid2FvZmJu + LnVwZwwAAABiZzJremkwZS53cGkMAAAAZTU0enhjZnMubHR5DAAAAGVtMDVzMnBpLm90MQwAAABv + YjFwMzUxbi54bWwMAAAAMGh1a3R4d2wuamV0DAAAAGtiaDF6dWxpLnA0MgwAAAB6b2NrZWtiYy5r + azAMAAAAd2pwYTFjMnIudmpxDAAAAHVkbmFrMXlhLjJscQwAAABub3BsenF1Zy5mY3cMAAAAZWdh + ZGJpd2EuZnN0DAAAAGJ2cmdkM2tjLmZmYgwAAABybnhrY2xnMy5lcmEMAAAAZGhmeGtoMmwud2wx + DAAAAGFyZHBqbDNoLmJvYwwAAAB3a2gzdWZ4eC55cGoMAAAAeXF5YmJoc2IucHVpDAAAAHRtem41 + cXlzLnpwcwwAAABhNGVjZ3ZiYi51cGsMAAAAem5wMmd6MmoubGwwDAAAAHJwMHJhcHhuLml6cwwA + AAA0dHp0ZWRtbC54ZXcMAAAAbXEwc2Zqem0uMGVyDAAAAGN5Mmx3b24xLnczdwwAAAAxbHV1cm5x + Yi5qcGUMAAAAc2g1dmdrM3AuaHRqDAAAAHRlMHduYm8yLmJwcgwAAABteTB1czE1NC51b24MAAAA + NWhmZ2NyanYuanJjDAAAAGlmbGxpMHl3LjNkegwAAAA1eWJkamdnaC5nZHEMAAAAY2dqaWFvejUu + bHlpDAAAAHJ6aXc1MnViLmM0ZQwAAAByNG1xMGlzZC4xbWMMAAAAeGJlcW5md2UuNG8xDAAAAHVw + dTF3aXN4LnhvaQwAAABoaGd4ZHk0cS5qYnYMAAAAcXYzYjBqb3AubWFhDAAAAGR3NGQxZ2hjLjRj + MQwAAAB0cHNrdnJyMS5iczAMAAAAb3h0Z2N1M2EuZ2gxDAAAADNvamFlaGJ4Lm9rdAwAAAA1dGF0 + ZmZwby50ZjQMAAAAdHM1c2N5c2gudnZwDAAAAHZncGE0amJrLnRrMgwAAABoamN3c2RvMi5waHEM + AAAAenZjMTMwZ3UuYjBpDAAAAHI0MWdrb2pjLnV3ZwwAAABnaHUwazByai40c24MAAAAZnoxM294 + NGgubWxqDAAAAHMyZ2JjNXBqLnF0NQwAAAAycHJmb3Joai5mYjEMAAAAdm1icm1ucWIubGIzDAAA + AG1paHd2NWxhLmFmZwwAAABkdGhuZTRubC5saWsMAAAAdHh0dmZpdHcubnN2DAAAAGtiZHR5bjBs + LjFhaAwAAABzYmhia3Zhcy5qMm8MAAAAMHJzcDRtZmouZXU1DAAAAHpxeXVzZTV3LmY1NQwAAABr + Z2dwZzVzZS5nYWgMAAAAbTRjaTV4ZXoubGxhDAAAADEycTFkenBxLmEwdAwAAABuY3lyMnFzcy41 + YTAMAAAAc2Zka2VsbW0ub3RyDAAAADRiZWdsMmZtLnh4NQwAAABzdnBscXhoNS5lbHcMAAAAZ3hh + b2FhbzUuZjJ4DAAAAG40c3JkZmt6LjQ0dgwAAABicHR2Mm5qbS50amwMAAAAY2FoZTBidGouYTBz + DAAAAGFkMGQ1dHJoLm0xdgwAAAB6dWswMW9hMy51M3gMAAAAcXoxdm90c2kudXg1DAAAAGl2Yndu + MjAxLnIzNQwAAABveW5xaHd2YS5ldGIMAAAAdHAzaG56b3AuZjVlDAAAAGpxcjJwbHhqLmVldAwA + AABnY2FvZG1iYS56M3MMAAAAandxejBkaGEueGF1DAAAAGt2MG5oMmZuLnZpYgwAAAAxNGMzanEw + dS5peW0MAAAAM212NGw0NTEuaGFsDAAAAGVxbXpoMXgwLjJuawwAAABzbGZub2xndy5jMHgMAAAA + dTNmZjVkdmIuZHozDAAAADVwNWZlMm9pLnN6cwwAAAAybmF5ajFwdS5pZG8MAAAAZDAycmZiM24u + djBhDAAAAGx3eW40d29jLmQyZwwAAAAycjR6bHRubS5qMWoMAAAAMWlyYnltMnQudXdpDAAAADBh + eHpqbTRwLjJycQwAAABibXR1eTBsaS4yZ2UVAhlMSBVwYXJxdWV0LWRvdG5ldC1zY2hlbWEVBgAV + DCUCGAJpZCUAABUMJQIYB3N0cmluZzElAAAVDCUCGAdzdHJpbmcyJQAAFqAfGSwZPCYIHBUMGTUG + CAAZGAJpZBUAFtAPFrhsFrhsJgg8GAM5OTkYATAWABbQDxgDOTk5GAEwAAAAJsBsHBUMGTUGCAAZ + GAdzdHJpbmcxFQAW0A8WuPsBFrj7ASbAbDwYDHp6cTBrZnk0LnZibhgMMDF3d3llNGcucGZzFgAW + 0A8YDHp6cTBrZnk0LnZibhgMMDF3d3llNGcucGZzAAAAJvjnAhwVDBk1BggAGRgHc3RyaW5nMhUA + FtAPFrj7ARa4+wEm+OcCPBgMenpxMGtmeTQudmJuGAwwMXd3eWU0Zy5wZnMWABbQDxgMenpxMGtm + eTQudmJuGAwwMXd3eWU0Zy5wZnMAAAAWqOMEFtAPABk8JrDjBBwVDBk1BggAGRgCaWQVABbQDxb0 + fRb0fSaw4wQ8GAQxOTk5GAQxMDAwFgAW0A8YBDE5OTkYBDEwMDAAAAAmpOEFHBUMGTUGCAAZGAdz + dHJpbmcxFQAW0A8WuPsBFrj7ASak4QU8GAx6emxneXhhNS40eWEYDDAxMWNxYW40Lnl6cxYAFtAP + GAx6emxneXhhNS40eWEYDDAxMWNxYW40Lnl6cwAAACbc3AccFQwZNQYIABkYB3N0cmluZzIVABbQ + Dxa4+wEWuPsBJtzcBzwYDHp6bGd5eGE1LjR5YRgMMDExY3FhbjQueXpzFgAW0A8YDHp6bGd5eGE1 + LjR5YRgMMDExY3FhbjQueXpzAAAAFuT0BBbQDwAoTFBhcnF1ZXQuTmV0IHZlcnNpb24gMy41LjMg + KGJ1aWxkICcwNTc0NTFiMzc2ZmE3ZDM1ODFmMmQxODAxZmIwOTY1YWZiZWFhMGMyJykAxQIAAFBB + UjE= + headers: + Accept: + - application/xml + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '80087' + Content-Type: + - application/octet-stream + User-Agent: + - azsdk-python-storage-blob/12.8.0 Python/3.8.5 (Windows-10-10.0.19041-SP0) + x-ms-blob-type: + - BlockBlob + x-ms-date: + - Fri, 09 Apr 2021 04:03:15 GMT + x-ms-encryption-algorithm: + - AES256 + x-ms-version: + - '2020-08-04' + method: PUT + uri: https://storagename.blob.core.windows.net/utqqcontainerb38317df/csvfileb38317df + response: + body: + string: '' + headers: + content-md5: + - z1EKaBGYeFFPXcMBK90K+w== + date: + - Fri, 09 Apr 2021 04:03:14 GMT + etag: + - '"0x8D8FB0C66E66383"' + last-modified: + - Fri, 09 Apr 2021 04:03:15 GMT + server: + - Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0 + transfer-encoding: + - chunked + x-ms-content-crc64: + - f7IDcRFZujI= + x-ms-request-server-encrypted: + - 'true' + x-ms-version: + - '2020-08-04' + status: + code: 201 + message: Created +- request: + body: ' + + SQLselect * from blobstorage + where id < 1;parquet + ' + headers: + Accept: + - application/xml + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '293' + Content-Type: + - application/xml + User-Agent: + - azsdk-python-storage-blob/12.8.0 Python/3.8.5 (Windows-10-10.0.19041-SP0) + x-ms-date: + - Fri, 09 Apr 2021 04:03:15 GMT + x-ms-encryption-algorithm: + - AES256 + x-ms-version: + - '2020-08-04' + method: POST + uri: https://storagename.blob.core.windows.net/utqqcontainerb38317df/csvfileb38317df?comp=query + response: + body: + string: !!binary | + T2JqAQIWYXZyby5zY2hlbWHOHlsKICB7CiAgICAidHlwZSI6ICJyZWNvcmQiLAogICAgIm5hbWUi + OiAiY29tLm1pY3Jvc29mdC5henVyZS5zdG9yYWdlLnF1ZXJ5QmxvYkNvbnRlbnRzLnJlc3VsdERh + dGEiLAogICAgImRvYyI6ICJIb2xkcyByZXN1bHQgZGF0YSBpbiB0aGUgZm9ybWF0IHNwZWNpZmll + ZCBmb3IgdGhpcyBxdWVyeSAoQ1NWLCBKU09OLCBldGMuKS4iLAogICAgImZpZWxkcyI6IFsKICAg + ICAgewogICAgICAgICJuYW1lIjogImRhdGEiLAogICAgICAgICJ0eXBlIjogImJ5dGVzIgogICAg + ICB9CiAgICBdCiAgfSwKICB7CiAgICAidHlwZSI6ICJyZWNvcmQiLAogICAgIm5hbWUiOiAiY29t + Lm1pY3Jvc29mdC5henVyZS5zdG9yYWdlLnF1ZXJ5QmxvYkNvbnRlbnRzLmVycm9yIiwKICAgICJk + b2MiOiAiQW4gZXJyb3IgdGhhdCBvY2N1cnJlZCB3aGlsZSBwcm9jZXNzaW5nIHRoZSBxdWVyeS4i + LAogICAgImZpZWxkcyI6IFsKICAgICAgewogICAgICAgICJuYW1lIjogImZhdGFsIiwKICAgICAg + ICAidHlwZSI6ICJib29sZWFuIiwKICAgICAgICAiZG9jIjogIklmIHRydWUsIHRoaXMgZXJyb3Ig + cHJldmVudHMgZnVydGhlciBxdWVyeSBwcm9jZXNzaW5nLiAgTW9yZSByZXN1bHQgZGF0YSBtYXkg + YmUgcmV0dXJuZWQsIGJ1dCB0aGVyZSBpcyBubyBndWFyYW50ZWUgdGhhdCBhbGwgb2YgdGhlIG9y + aWdpbmFsIGRhdGEgd2lsbCBiZSBwcm9jZXNzZWQuICBJZiBmYWxzZSwgdGhpcyBlcnJvciBkb2Vz + IG5vdCBwcmV2ZW50IGZ1cnRoZXIgcXVlcnkgcHJvY2Vzc2luZy4iCiAgICAgIH0sCiAgICAgIHsK + ICAgICAgICAibmFtZSI6ICJuYW1lIiwKICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAg + ICJkb2MiOiAiVGhlIG5hbWUgb2YgdGhlIGVycm9yIgogICAgICB9LAogICAgICB7CiAgICAgICAg + Im5hbWUiOiAiZGVzY3JpcHRpb24iLAogICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAg + ImRvYyI6ICJBIGRlc2NyaXB0aW9uIG9mIHRoZSBlcnJvciIKICAgICAgfSwKICAgICAgewogICAg + ICAgICJuYW1lIjogInBvc2l0aW9uIiwKICAgICAgICAidHlwZSI6ICJsb25nIiwKICAgICAgICAi + ZG9jIjogIlRoZSByZWNvcmQgb2Zmc2V0IGluIHRoZSBibG9iIGF0IHdoaWNoIHRoZSBlcnJvciBv + Y2N1cnJlZCIKICAgICAgfQogICAgXQogIH0sCiAgewogICAgInR5cGUiOiAicmVjb3JkIiwKICAg + ICJuYW1lIjogImNvbS5taWNyb3NvZnQuYXp1cmUuc3RvcmFnZS5xdWVyeUJsb2JDb250ZW50cy5w + cm9ncmVzcyIsCiAgICAiZG9jIjogIkluZm9ybWF0aW9uIGFib3V0IHRoZSBwcm9ncmVzcyBvZiB0 + aGUgcXVlcnkiLAogICAgImZpZWxkcyI6IFsKICAgICAgewogICAgICAgICJuYW1lIjogImJ5dGVz + U2Nhbm5lZCIsCiAgICAgICAgInR5cGUiOiAibG9uZyIsCiAgICAgICAgImRvYyI6ICJUaGUgbnVt + YmVyIG9mIGJ5dGVzIHRoYXQgaGF2ZSBiZWVuIHNjYW5uZWQiCiAgICAgIH0sCiAgICAgIHsKICAg + ICAgICAibmFtZSI6ICJ0b3RhbEJ5dGVzIiwKICAgICAgICAidHlwZSI6ICJsb25nIiwKICAgICAg + ICAiZG9jIjogIlRoZSB0b3RhbCBudW1iZXIgb2YgYnl0ZXMgdG8gYmUgc2Nhbm5lZCBpbiB0aGlz + IHF1ZXJ5IgogICAgICB9CiAgICBdCiAgfSwKICB7CiAgICAidHlwZSI6ICJyZWNvcmQiLAogICAg + Im5hbWUiOiAiY29tLm1pY3Jvc29mdC5henVyZS5zdG9yYWdlLnF1ZXJ5QmxvYkNvbnRlbnRzLmVu + ZCIsCiAgICAiZG9jIjogIlNlbnQgYXMgdGhlIGZpbmFsIG1lc3NhZ2Ugb2YgdGhlIHJlc3BvbnNl + LCBpbmRpY2F0aW5nIHRoYXQgYWxsIHJlc3VsdHMgaGF2ZSBiZWVuIHNlbnQuIiwKICAgICJmaWVs + ZHMiOiBbCiAgICAgIHsKICAgICAgICAibmFtZSI6ICJ0b3RhbEJ5dGVzIiwKICAgICAgICAidHlw + ZSI6ICJsb25nIiwKICAgICAgICAiZG9jIjogIlRoZSB0b3RhbCBudW1iZXIgb2YgYnl0ZXMgc2Nh + bm5lZCBpbiB0aGlzIHF1ZXJ5IgogICAgICB9CiAgICBdCiAgfQpdCgBeCQoEJjNiRJDCzm420C7q + AjwAODAsbWRpZmp0NTUuZWEzLG1kaWZqdDU1LmVhMwpeCQoEJjNiRJDCzm420C7qAg4Ewu4EruMJ + XgkKBCYzYkSQws5uNtAu6gIIBq7jCV4JCgQmM2JEkMLObjbQLuo= + headers: + accept-ranges: + - bytes + content-type: + - avro/binary + date: + - Fri, 09 Apr 2021 04:03:15 GMT + etag: + - '"0x8D8FB0C66E66383"' + last-modified: + - Fri, 09 Apr 2021 04:03:15 GMT + server: + - Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0 + transfer-encoding: + - chunked + x-ms-blob-type: + - BlockBlob + x-ms-creation-time: + - Fri, 09 Apr 2021 04:03:15 GMT + x-ms-lease-state: + - available + x-ms-lease-status: + - unlocked + x-ms-server-encrypted: + - 'true' + x-ms-version: + - '2020-08-04' + status: + code: 200 + message: OK +version: 1 diff --git a/sdk/storage/azure-storage-blob/tests/recordings/test_quick_query.test_quick_query_output_in_parquet_format.yaml b/sdk/storage/azure-storage-blob/tests/recordings/test_quick_query.test_quick_query_output_in_parquet_format.yaml new file mode 100644 index 000000000000..2899b4154d62 --- /dev/null +++ b/sdk/storage/azure-storage-blob/tests/recordings/test_quick_query.test_quick_query_output_in_parquet_format.yaml @@ -0,0 +1,1496 @@ +interactions: +- request: + body: null + headers: + Accept: + - application/xml + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '0' + User-Agent: + - azsdk-python-storage-blob/12.8.0 Python/3.8.5 (Windows-10-10.0.19041-SP0) + x-ms-date: + - Fri, 09 Apr 2021 04:19:09 GMT + x-ms-version: + - '2020-08-04' + method: PUT + uri: https://storagename.blob.core.windows.net/utqqcontainercdb31860?restype=container + response: + body: + string: '' + headers: + date: + - Fri, 09 Apr 2021 04:19:09 GMT + etag: + - '"0x8D8FB0E9FF3E60A"' + last-modified: + - Fri, 09 Apr 2021 04:19:10 GMT + server: + - Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0 + transfer-encoding: + - chunked + x-ms-version: + - '2020-08-04' + status: + code: 201 + message: Created +- request: + body: !!binary | + UEFSMRUAFeJrFeJrLBXQDxUAFQYVBhwYAzk5ORgBMBYAFtAPGAM5OTkYATAAAAADAAAA0A8BAQAA + ADABAAAAMQEAAAAyAQAAADMBAAAANAEAAAA1AQAAADYBAAAANwEAAAA4AQAAADkCAAAAMTACAAAA + MTECAAAAMTICAAAAMTMCAAAAMTQCAAAAMTUCAAAAMTYCAAAAMTcCAAAAMTgCAAAAMTkCAAAAMjAC + AAAAMjECAAAAMjICAAAAMjMCAAAAMjQCAAAAMjUCAAAAMjYCAAAAMjcCAAAAMjgCAAAAMjkCAAAA + MzACAAAAMzECAAAAMzICAAAAMzMCAAAAMzQCAAAAMzUCAAAAMzYCAAAAMzcCAAAAMzgCAAAAMzkC + AAAANDACAAAANDECAAAANDICAAAANDMCAAAANDQCAAAANDUCAAAANDYCAAAANDcCAAAANDgCAAAA + NDkCAAAANTACAAAANTECAAAANTICAAAANTMCAAAANTQCAAAANTUCAAAANTYCAAAANTcCAAAANTgC + AAAANTkCAAAANjACAAAANjECAAAANjICAAAANjMCAAAANjQCAAAANjUCAAAANjYCAAAANjcCAAAA + NjgCAAAANjkCAAAANzACAAAANzECAAAANzICAAAANzMCAAAANzQCAAAANzUCAAAANzYCAAAANzcC + AAAANzgCAAAANzkCAAAAODACAAAAODECAAAAODICAAAAODMCAAAAODQCAAAAODUCAAAAODYCAAAA + ODcCAAAAODgCAAAAODkCAAAAOTACAAAAOTECAAAAOTICAAAAOTMCAAAAOTQCAAAAOTUCAAAAOTYC + AAAAOTcCAAAAOTgCAAAAOTkDAAAAMTAwAwAAADEwMQMAAAAxMDIDAAAAMTAzAwAAADEwNAMAAAAx + MDUDAAAAMTA2AwAAADEwNwMAAAAxMDgDAAAAMTA5AwAAADExMAMAAAAxMTEDAAAAMTEyAwAAADEx + MwMAAAAxMTQDAAAAMTE1AwAAADExNgMAAAAxMTcDAAAAMTE4AwAAADExOQMAAAAxMjADAAAAMTIx + AwAAADEyMgMAAAAxMjMDAAAAMTI0AwAAADEyNQMAAAAxMjYDAAAAMTI3AwAAADEyOAMAAAAxMjkD + AAAAMTMwAwAAADEzMQMAAAAxMzIDAAAAMTMzAwAAADEzNAMAAAAxMzUDAAAAMTM2AwAAADEzNwMA + AAAxMzgDAAAAMTM5AwAAADE0MAMAAAAxNDEDAAAAMTQyAwAAADE0MwMAAAAxNDQDAAAAMTQ1AwAA + ADE0NgMAAAAxNDcDAAAAMTQ4AwAAADE0OQMAAAAxNTADAAAAMTUxAwAAADE1MgMAAAAxNTMDAAAA + MTU0AwAAADE1NQMAAAAxNTYDAAAAMTU3AwAAADE1OAMAAAAxNTkDAAAAMTYwAwAAADE2MQMAAAAx + NjIDAAAAMTYzAwAAADE2NAMAAAAxNjUDAAAAMTY2AwAAADE2NwMAAAAxNjgDAAAAMTY5AwAAADE3 + MAMAAAAxNzEDAAAAMTcyAwAAADE3MwMAAAAxNzQDAAAAMTc1AwAAADE3NgMAAAAxNzcDAAAAMTc4 + AwAAADE3OQMAAAAxODADAAAAMTgxAwAAADE4MgMAAAAxODMDAAAAMTg0AwAAADE4NQMAAAAxODYD + AAAAMTg3AwAAADE4OAMAAAAxODkDAAAAMTkwAwAAADE5MQMAAAAxOTIDAAAAMTkzAwAAADE5NAMA + AAAxOTUDAAAAMTk2AwAAADE5NwMAAAAxOTgDAAAAMTk5AwAAADIwMAMAAAAyMDEDAAAAMjAyAwAA + ADIwMwMAAAAyMDQDAAAAMjA1AwAAADIwNgMAAAAyMDcDAAAAMjA4AwAAADIwOQMAAAAyMTADAAAA + MjExAwAAADIxMgMAAAAyMTMDAAAAMjE0AwAAADIxNQMAAAAyMTYDAAAAMjE3AwAAADIxOAMAAAAy + MTkDAAAAMjIwAwAAADIyMQMAAAAyMjIDAAAAMjIzAwAAADIyNAMAAAAyMjUDAAAAMjI2AwAAADIy + NwMAAAAyMjgDAAAAMjI5AwAAADIzMAMAAAAyMzEDAAAAMjMyAwAAADIzMwMAAAAyMzQDAAAAMjM1 + AwAAADIzNgMAAAAyMzcDAAAAMjM4AwAAADIzOQMAAAAyNDADAAAAMjQxAwAAADI0MgMAAAAyNDMD + AAAAMjQ0AwAAADI0NQMAAAAyNDYDAAAAMjQ3AwAAADI0OAMAAAAyNDkDAAAAMjUwAwAAADI1MQMA + AAAyNTIDAAAAMjUzAwAAADI1NAMAAAAyNTUDAAAAMjU2AwAAADI1NwMAAAAyNTgDAAAAMjU5AwAA + ADI2MAMAAAAyNjEDAAAAMjYyAwAAADI2MwMAAAAyNjQDAAAAMjY1AwAAADI2NgMAAAAyNjcDAAAA + MjY4AwAAADI2OQMAAAAyNzADAAAAMjcxAwAAADI3MgMAAAAyNzMDAAAAMjc0AwAAADI3NQMAAAAy + NzYDAAAAMjc3AwAAADI3OAMAAAAyNzkDAAAAMjgwAwAAADI4MQMAAAAyODIDAAAAMjgzAwAAADI4 + NAMAAAAyODUDAAAAMjg2AwAAADI4NwMAAAAyODgDAAAAMjg5AwAAADI5MAMAAAAyOTEDAAAAMjky + AwAAADI5MwMAAAAyOTQDAAAAMjk1AwAAADI5NgMAAAAyOTcDAAAAMjk4AwAAADI5OQMAAAAzMDAD + AAAAMzAxAwAAADMwMgMAAAAzMDMDAAAAMzA0AwAAADMwNQMAAAAzMDYDAAAAMzA3AwAAADMwOAMA + AAAzMDkDAAAAMzEwAwAAADMxMQMAAAAzMTIDAAAAMzEzAwAAADMxNAMAAAAzMTUDAAAAMzE2AwAA + ADMxNwMAAAAzMTgDAAAAMzE5AwAAADMyMAMAAAAzMjEDAAAAMzIyAwAAADMyMwMAAAAzMjQDAAAA + MzI1AwAAADMyNgMAAAAzMjcDAAAAMzI4AwAAADMyOQMAAAAzMzADAAAAMzMxAwAAADMzMgMAAAAz + MzMDAAAAMzM0AwAAADMzNQMAAAAzMzYDAAAAMzM3AwAAADMzOAMAAAAzMzkDAAAAMzQwAwAAADM0 + MQMAAAAzNDIDAAAAMzQzAwAAADM0NAMAAAAzNDUDAAAAMzQ2AwAAADM0NwMAAAAzNDgDAAAAMzQ5 + AwAAADM1MAMAAAAzNTEDAAAAMzUyAwAAADM1MwMAAAAzNTQDAAAAMzU1AwAAADM1NgMAAAAzNTcD + AAAAMzU4AwAAADM1OQMAAAAzNjADAAAAMzYxAwAAADM2MgMAAAAzNjMDAAAAMzY0AwAAADM2NQMA + AAAzNjYDAAAAMzY3AwAAADM2OAMAAAAzNjkDAAAAMzcwAwAAADM3MQMAAAAzNzIDAAAAMzczAwAA + ADM3NAMAAAAzNzUDAAAAMzc2AwAAADM3NwMAAAAzNzgDAAAAMzc5AwAAADM4MAMAAAAzODEDAAAA + MzgyAwAAADM4MwMAAAAzODQDAAAAMzg1AwAAADM4NgMAAAAzODcDAAAAMzg4AwAAADM4OQMAAAAz + OTADAAAAMzkxAwAAADM5MgMAAAAzOTMDAAAAMzk0AwAAADM5NQMAAAAzOTYDAAAAMzk3AwAAADM5 + OAMAAAAzOTkDAAAANDAwAwAAADQwMQMAAAA0MDIDAAAANDAzAwAAADQwNAMAAAA0MDUDAAAANDA2 + AwAAADQwNwMAAAA0MDgDAAAANDA5AwAAADQxMAMAAAA0MTEDAAAANDEyAwAAADQxMwMAAAA0MTQD + AAAANDE1AwAAADQxNgMAAAA0MTcDAAAANDE4AwAAADQxOQMAAAA0MjADAAAANDIxAwAAADQyMgMA + AAA0MjMDAAAANDI0AwAAADQyNQMAAAA0MjYDAAAANDI3AwAAADQyOAMAAAA0MjkDAAAANDMwAwAA + ADQzMQMAAAA0MzIDAAAANDMzAwAAADQzNAMAAAA0MzUDAAAANDM2AwAAADQzNwMAAAA0MzgDAAAA + NDM5AwAAADQ0MAMAAAA0NDEDAAAANDQyAwAAADQ0MwMAAAA0NDQDAAAANDQ1AwAAADQ0NgMAAAA0 + NDcDAAAANDQ4AwAAADQ0OQMAAAA0NTADAAAANDUxAwAAADQ1MgMAAAA0NTMDAAAANDU0AwAAADQ1 + NQMAAAA0NTYDAAAANDU3AwAAADQ1OAMAAAA0NTkDAAAANDYwAwAAADQ2MQMAAAA0NjIDAAAANDYz + AwAAADQ2NAMAAAA0NjUDAAAANDY2AwAAADQ2NwMAAAA0NjgDAAAANDY5AwAAADQ3MAMAAAA0NzED + AAAANDcyAwAAADQ3MwMAAAA0NzQDAAAANDc1AwAAADQ3NgMAAAA0NzcDAAAANDc4AwAAADQ3OQMA + AAA0ODADAAAANDgxAwAAADQ4MgMAAAA0ODMDAAAANDg0AwAAADQ4NQMAAAA0ODYDAAAANDg3AwAA + ADQ4OAMAAAA0ODkDAAAANDkwAwAAADQ5MQMAAAA0OTIDAAAANDkzAwAAADQ5NAMAAAA0OTUDAAAA + NDk2AwAAADQ5NwMAAAA0OTgDAAAANDk5AwAAADUwMAMAAAA1MDEDAAAANTAyAwAAADUwMwMAAAA1 + MDQDAAAANTA1AwAAADUwNgMAAAA1MDcDAAAANTA4AwAAADUwOQMAAAA1MTADAAAANTExAwAAADUx + MgMAAAA1MTMDAAAANTE0AwAAADUxNQMAAAA1MTYDAAAANTE3AwAAADUxOAMAAAA1MTkDAAAANTIw + AwAAADUyMQMAAAA1MjIDAAAANTIzAwAAADUyNAMAAAA1MjUDAAAANTI2AwAAADUyNwMAAAA1MjgD + AAAANTI5AwAAADUzMAMAAAA1MzEDAAAANTMyAwAAADUzMwMAAAA1MzQDAAAANTM1AwAAADUzNgMA + AAA1MzcDAAAANTM4AwAAADUzOQMAAAA1NDADAAAANTQxAwAAADU0MgMAAAA1NDMDAAAANTQ0AwAA + ADU0NQMAAAA1NDYDAAAANTQ3AwAAADU0OAMAAAA1NDkDAAAANTUwAwAAADU1MQMAAAA1NTIDAAAA + NTUzAwAAADU1NAMAAAA1NTUDAAAANTU2AwAAADU1NwMAAAA1NTgDAAAANTU5AwAAADU2MAMAAAA1 + NjEDAAAANTYyAwAAADU2MwMAAAA1NjQDAAAANTY1AwAAADU2NgMAAAA1NjcDAAAANTY4AwAAADU2 + OQMAAAA1NzADAAAANTcxAwAAADU3MgMAAAA1NzMDAAAANTc0AwAAADU3NQMAAAA1NzYDAAAANTc3 + AwAAADU3OAMAAAA1NzkDAAAANTgwAwAAADU4MQMAAAA1ODIDAAAANTgzAwAAADU4NAMAAAA1ODUD + AAAANTg2AwAAADU4NwMAAAA1ODgDAAAANTg5AwAAADU5MAMAAAA1OTEDAAAANTkyAwAAADU5MwMA + AAA1OTQDAAAANTk1AwAAADU5NgMAAAA1OTcDAAAANTk4AwAAADU5OQMAAAA2MDADAAAANjAxAwAA + ADYwMgMAAAA2MDMDAAAANjA0AwAAADYwNQMAAAA2MDYDAAAANjA3AwAAADYwOAMAAAA2MDkDAAAA + NjEwAwAAADYxMQMAAAA2MTIDAAAANjEzAwAAADYxNAMAAAA2MTUDAAAANjE2AwAAADYxNwMAAAA2 + MTgDAAAANjE5AwAAADYyMAMAAAA2MjEDAAAANjIyAwAAADYyMwMAAAA2MjQDAAAANjI1AwAAADYy + NgMAAAA2MjcDAAAANjI4AwAAADYyOQMAAAA2MzADAAAANjMxAwAAADYzMgMAAAA2MzMDAAAANjM0 + AwAAADYzNQMAAAA2MzYDAAAANjM3AwAAADYzOAMAAAA2MzkDAAAANjQwAwAAADY0MQMAAAA2NDID + AAAANjQzAwAAADY0NAMAAAA2NDUDAAAANjQ2AwAAADY0NwMAAAA2NDgDAAAANjQ5AwAAADY1MAMA + AAA2NTEDAAAANjUyAwAAADY1MwMAAAA2NTQDAAAANjU1AwAAADY1NgMAAAA2NTcDAAAANjU4AwAA + ADY1OQMAAAA2NjADAAAANjYxAwAAADY2MgMAAAA2NjMDAAAANjY0AwAAADY2NQMAAAA2NjYDAAAA + NjY3AwAAADY2OAMAAAA2NjkDAAAANjcwAwAAADY3MQMAAAA2NzIDAAAANjczAwAAADY3NAMAAAA2 + NzUDAAAANjc2AwAAADY3NwMAAAA2NzgDAAAANjc5AwAAADY4MAMAAAA2ODEDAAAANjgyAwAAADY4 + MwMAAAA2ODQDAAAANjg1AwAAADY4NgMAAAA2ODcDAAAANjg4AwAAADY4OQMAAAA2OTADAAAANjkx + AwAAADY5MgMAAAA2OTMDAAAANjk0AwAAADY5NQMAAAA2OTYDAAAANjk3AwAAADY5OAMAAAA2OTkD + AAAANzAwAwAAADcwMQMAAAA3MDIDAAAANzAzAwAAADcwNAMAAAA3MDUDAAAANzA2AwAAADcwNwMA + AAA3MDgDAAAANzA5AwAAADcxMAMAAAA3MTEDAAAANzEyAwAAADcxMwMAAAA3MTQDAAAANzE1AwAA + ADcxNgMAAAA3MTcDAAAANzE4AwAAADcxOQMAAAA3MjADAAAANzIxAwAAADcyMgMAAAA3MjMDAAAA + NzI0AwAAADcyNQMAAAA3MjYDAAAANzI3AwAAADcyOAMAAAA3MjkDAAAANzMwAwAAADczMQMAAAA3 + MzIDAAAANzMzAwAAADczNAMAAAA3MzUDAAAANzM2AwAAADczNwMAAAA3MzgDAAAANzM5AwAAADc0 + MAMAAAA3NDEDAAAANzQyAwAAADc0MwMAAAA3NDQDAAAANzQ1AwAAADc0NgMAAAA3NDcDAAAANzQ4 + AwAAADc0OQMAAAA3NTADAAAANzUxAwAAADc1MgMAAAA3NTMDAAAANzU0AwAAADc1NQMAAAA3NTYD + AAAANzU3AwAAADc1OAMAAAA3NTkDAAAANzYwAwAAADc2MQMAAAA3NjIDAAAANzYzAwAAADc2NAMA + AAA3NjUDAAAANzY2AwAAADc2NwMAAAA3NjgDAAAANzY5AwAAADc3MAMAAAA3NzEDAAAANzcyAwAA + ADc3MwMAAAA3NzQDAAAANzc1AwAAADc3NgMAAAA3NzcDAAAANzc4AwAAADc3OQMAAAA3ODADAAAA + NzgxAwAAADc4MgMAAAA3ODMDAAAANzg0AwAAADc4NQMAAAA3ODYDAAAANzg3AwAAADc4OAMAAAA3 + ODkDAAAANzkwAwAAADc5MQMAAAA3OTIDAAAANzkzAwAAADc5NAMAAAA3OTUDAAAANzk2AwAAADc5 + NwMAAAA3OTgDAAAANzk5AwAAADgwMAMAAAA4MDEDAAAAODAyAwAAADgwMwMAAAA4MDQDAAAAODA1 + AwAAADgwNgMAAAA4MDcDAAAAODA4AwAAADgwOQMAAAA4MTADAAAAODExAwAAADgxMgMAAAA4MTMD + AAAAODE0AwAAADgxNQMAAAA4MTYDAAAAODE3AwAAADgxOAMAAAA4MTkDAAAAODIwAwAAADgyMQMA + AAA4MjIDAAAAODIzAwAAADgyNAMAAAA4MjUDAAAAODI2AwAAADgyNwMAAAA4MjgDAAAAODI5AwAA + ADgzMAMAAAA4MzEDAAAAODMyAwAAADgzMwMAAAA4MzQDAAAAODM1AwAAADgzNgMAAAA4MzcDAAAA + ODM4AwAAADgzOQMAAAA4NDADAAAAODQxAwAAADg0MgMAAAA4NDMDAAAAODQ0AwAAADg0NQMAAAA4 + NDYDAAAAODQ3AwAAADg0OAMAAAA4NDkDAAAAODUwAwAAADg1MQMAAAA4NTIDAAAAODUzAwAAADg1 + NAMAAAA4NTUDAAAAODU2AwAAADg1NwMAAAA4NTgDAAAAODU5AwAAADg2MAMAAAA4NjEDAAAAODYy + AwAAADg2MwMAAAA4NjQDAAAAODY1AwAAADg2NgMAAAA4NjcDAAAAODY4AwAAADg2OQMAAAA4NzAD + AAAAODcxAwAAADg3MgMAAAA4NzMDAAAAODc0AwAAADg3NQMAAAA4NzYDAAAAODc3AwAAADg3OAMA + AAA4NzkDAAAAODgwAwAAADg4MQMAAAA4ODIDAAAAODgzAwAAADg4NAMAAAA4ODUDAAAAODg2AwAA + ADg4NwMAAAA4ODgDAAAAODg5AwAAADg5MAMAAAA4OTEDAAAAODkyAwAAADg5MwMAAAA4OTQDAAAA + ODk1AwAAADg5NgMAAAA4OTcDAAAAODk4AwAAADg5OQMAAAA5MDADAAAAOTAxAwAAADkwMgMAAAA5 + MDMDAAAAOTA0AwAAADkwNQMAAAA5MDYDAAAAOTA3AwAAADkwOAMAAAA5MDkDAAAAOTEwAwAAADkx + MQMAAAA5MTIDAAAAOTEzAwAAADkxNAMAAAA5MTUDAAAAOTE2AwAAADkxNwMAAAA5MTgDAAAAOTE5 + AwAAADkyMAMAAAA5MjEDAAAAOTIyAwAAADkyMwMAAAA5MjQDAAAAOTI1AwAAADkyNgMAAAA5MjcD + AAAAOTI4AwAAADkyOQMAAAA5MzADAAAAOTMxAwAAADkzMgMAAAA5MzMDAAAAOTM0AwAAADkzNQMA + AAA5MzYDAAAAOTM3AwAAADkzOAMAAAA5MzkDAAAAOTQwAwAAADk0MQMAAAA5NDIDAAAAOTQzAwAA + ADk0NAMAAAA5NDUDAAAAOTQ2AwAAADk0NwMAAAA5NDgDAAAAOTQ5AwAAADk1MAMAAAA5NTEDAAAA + OTUyAwAAADk1MwMAAAA5NTQDAAAAOTU1AwAAADk1NgMAAAA5NTcDAAAAOTU4AwAAADk1OQMAAAA5 + NjADAAAAOTYxAwAAADk2MgMAAAA5NjMDAAAAOTY0AwAAADk2NQMAAAA5NjYDAAAAOTY3AwAAADk2 + OAMAAAA5NjkDAAAAOTcwAwAAADk3MQMAAAA5NzIDAAAAOTczAwAAADk3NAMAAAA5NzUDAAAAOTc2 + AwAAADk3NwMAAAA5NzgDAAAAOTc5AwAAADk4MAMAAAA5ODEDAAAAOTgyAwAAADk4MwMAAAA5ODQD + AAAAOTg1AwAAADk4NgMAAAA5ODcDAAAAOTg4AwAAADk4OQMAAAA5OTADAAAAOTkxAwAAADk5MgMA + AAA5OTMDAAAAOTk0AwAAADk5NQMAAAA5OTYDAAAAOTk3AwAAADk5OAMAAAA5OTkVABWO+gEVjvoB + LBXQDxUAFQYVBhwYDHp6cTBrZnk0LnZibhgMMDF3d3llNGcucGZzFgAW0A8YDHp6cTBrZnk0LnZi + bhgMMDF3d3llNGcucGZzAAAAAwAAANAPAQwAAABtZGlmanQ1NS5lYTMMAAAANWRtdnFldmcuamsw + DAAAAHNmdGdtZ3N4LmIxZAwAAAB6cm9xdnM1dC5samkMAAAAYW8zamF0bmMuMXZoDAAAAHUzYmZ1 + dmRsLjF3cgwAAABqcWN3M2VyMy5sdDIMAAAAc2gxc3doZXQuYnczDAAAAGkwc3EzMDVvLmg1dQwA + AAB1NTNjZWxhMC5zZ2IMAAAAemZybTVobHEud3J1DAAAAGN6Y2Nra3QyLnJpMAwAAABxMG40NTJl + NC51bnkMAAAAanVvenVtYWEudmZ2DAAAADFtdGZvMTNtLnhlaQwAAABjd3RhZWQyci5xZHcMAAAA + M215czB5a2YuYWdqDAAAAHZlYXVpbTNtLjNhMwwAAAB1NHh1cWZxci5ubXEMAAAAbHd1aG5kbTAu + d2pmDAAAAGtqdXkycm50LnVqdAwAAABxeGNpd3JpMS5seDEMAAAAbHBlYnRqNXcuZmMwDAAAAHp0 + aWoxcWNiLml5MwwAAAAzbXdyZXpwMi5xaTAMAAAAYXoyamF3M2EuY2RmDAAAAHBjanpvdzF1Lm0w + MAwAAAAzZHlxdmg0MS5wYWMMAAAAMGFqY3lkcHMuYTRkDAAAAGI1MnJtY2htLnNoZQwAAABwczBz + ZGZzei5lcmMMAAAAZjUxdDNkaGIuanZjDAAAADV6cmhzYnpqLjF4YgwAAABqMmxtZnpzMi5xZmIM + AAAAcjBlcngxaXQuaXRyDAAAAGpiMGRzdTAxLnBlbwwAAAAzd2owZGsybi5hczIMAAAAem5iemhn + aXAuY2xxDAAAAG5xYmJwcHJ1LmZncQwAAABncDF4emYxZy4zeGQMAAAAcm95ZG9udWsuYjJqDAAA + AGVlZ2czY3FzLml0eAwAAABtNHYxd29sdC40bGgMAAAAcHV4MHp5ZGMubHZsDAAAAGRiZGZtc3Iy + LmlrNAwAAAB1cXQ1c2EzaS5hbmsMAAAANWpjaWpoMWcua2dtDAAAAHIwbm50eTRwLnFlMAwAAAA0 + eGMxcGMzai5vemYMAAAAZDN4dzNoZ2EuYWZkDAAAAHZlMHVtZnl5Lms1agwAAABhcHljZ2h1aC5h + bHIMAAAAY3l6Z2twaDQuM2ljDAAAAGJjZTJ5dmNxLmhhbQwAAABveGxhdGdudy5hdG8MAAAAdGpn + b2tzZTIudTRzDAAAAGt1MWw1NDVkLnB3ZgwAAAB1Y2VhYmxjcS5odnUMAAAAc2x3dXZjaXkucXlm + DAAAAG9seWMwcml2LmhuYgwAAAB3cmN6bXEwbC5yZ3cMAAAAc3F3aTVla3UuZnl6DAAAAHdua2Vz + Y25rLm5kbwwAAABoajRzbDVqMS5mdXkMAAAAczR4bmJoMmMudGgwDAAAADVobHZvZ2l3LndtMQwA + AABjcTBuNDVwei5mc3AMAAAAemYydndqaXIuZXVxDAAAADVqeHZkNTMwLnp2NQwAAABqc2N2b3lj + Yy5xcWcMAAAAbHNqbnp2ZmIua3J3DAAAADRwYWliaHoxLnYxcAwAAAB1cmkwMmFjMy5zYnkMAAAA + bWc1cXdiMXEudGVqDAAAAG5sYmd5b2k1LmZkZwwAAABrM3ZiMW1vby5xYWsMAAAAdmN5Z3FzcWUu + dXZiDAAAAGRobWFheWc1LnNrYQwAAAB0dW9sZ3lobS5seGQMAAAAcW1mdXJrMWcucmNnDAAAAHMy + ZmdlMDAzLmNkMQwAAABpM25sY256dy4wNGwMAAAAc2UxNHJmeWwucG1zDAAAAHR0eW9kc251LjQ1 + ZQwAAABtcmQxamJ0Zy5uZjEMAAAAeWNtcG5ldzQueTFnDAAAAHd6dmF6cHZqLmFoeAwAAAA1bXVy + NGt2ei5mZWoMAAAAM2NoYnN6dmYubXl2DAAAAHBldGsyZzVxLmxnZwwAAAA1bTU0Zmdnby5rdjUM + AAAAeXptczVvMHMuNTN6DAAAADB4NTRsZHN5LmdxdgwAAABnZWlzemdhMS53ZnIMAAAAamExY2xh + dHcuNWNpDAAAAG9ydHVzdnlwLnp1dwwAAAAyYTJueHNxbS5hdHIMAAAAeW5sNXR0eWgubTVsDAAA + AG5xY2k0bjUxLjM0dAwAAABrMjRraXpsZC50aXQMAAAAcHBwZmNwMmQuenRxDAAAAGtnbGl5ZXN0 + LmFmdgwAAAAzbGFlb25nbi5qenoMAAAAaDA1djA1YnQuc253DAAAAGVrZGp0Y3U1LjNicAwAAAA0 + dmp3eTJhei5kc3cMAAAAYzR3MjF6ZXAuYWNzDAAAAG1hZmtrdGh1LjN5dAwAAABqaDV2ZGx6eC54 + aGIMAAAAanYzZ2lhMDAuemFxDAAAAGxucjAxemRkLmh0eAwAAABtbmNkZjRudS5idnQMAAAAY3l1 + ajNjcjUuYmVhDAAAAGt2cG5kem94Lm1vbQwAAAAyZjB0c2Vuby5tNWkMAAAAcTJvbGRtbDQuZHly + DAAAAHFqMTBqY3BjLmhrdwwAAABjMXZ3bWtvYi56azUMAAAAdWRtNGFiMXMuM3FtDAAAAGtxZ2I1 + ZndsLnV6MwwAAABla21uYjBoZC55c3IMAAAAYWdqYnNrbnIuMmd5DAAAAGZwNGRqamxsLm1meQwA + AABibzVkZW1oeC5taHcMAAAAcnppZ29ldWkuYnhkDAAAAHhhZmUwaWlrLnQ1ZQwAAABybXZreHN6 + ZS5id2EMAAAAaHRxNWZndm8uaGdlDAAAAGczeXBicGprLnY0ZQwAAABtbXYwb3lieC5rM2cMAAAA + ZGhqMGIxY3kudm5tDAAAAGJoYm5kZGRjLnp1cgwAAABid2NicDQxZC55dG4MAAAAZGhoZ2d0dGku + MWhrDAAAAHFwa3J2MW40LmlvcAwAAABnMGNsdDUxbS5wYnEMAAAAbnhsbGRhYW8ua2RwDAAAADBu + cTV0Y3J3LmpldAwAAAAzNDAzbW9tai5nbGgMAAAAcG1kNHp6aGsueXJzDAAAAGYxcmMwNGp0LjFr + bAwAAAA0dXhmc2loaS5tMHUMAAAAZWx6Z2t4dmoucmplDAAAAGxrdmY1b3gyLmpqMAwAAABhejIy + NG1qci5zZ24MAAAAemYwemFwdW0udnZjDAAAAGNjZnBqMG95LjRpZgwAAABtazB4dXZ5MS5pMjEM + AAAAMjRmbjJ6eHIudGtqDAAAAG96eWZ1b3JuLjFybgwAAABhdnN3dTF2Zy5vYXMMAAAAcmNtaHhv + czMucnptDAAAAGhyajVmZ3NnLjM1MQwAAAB0eWlibmV5bC54aHQMAAAANXIzZHV6b2cuamlnDAAA + AHBuMXJ5ZWFnLmV1bAwAAAB6MmFsbXJ6ZS5tdHkMAAAAenpxMGtmeTQudmJuDAAAAHJ0cTBkZG9n + LjV1ZwwAAAB3ZXRlc2hteS5kYW0MAAAAZWc0M2tvMG8uamhnDAAAAHNxaGdhaW1wLnQ0YgwAAAB6 + cDRtdmh1Yy5xbW0MAAAAM2dnd3F3aHYuZ3MzDAAAAHd1emNxb3Z4LmZqMgwAAAAxbDFtNDFiai5n + ZHcMAAAAdnFib3FrcHQuMzJ2DAAAAGU1bTR0MmVxLnhsNAwAAABmMXhtMTN6eS5langMAAAAMXNl + cTVjaG0ub3BoDAAAAHgzYmt3Z3JyLjViYQwAAAA1MXNqeWNncy51bWgMAAAAMHNrdmJvanEueTBo + DAAAAHo0anJ5YmYwLmVvbAwAAABxaXNmbDRsci5iZXEMAAAAb2xmZ2RhYnoud3djDAAAAGFnem1o + eHV1LmN3aAwAAABiNXB4bTR2dy5yamIMAAAAbTBzb28xanYubG5xDAAAAHJ4dWJ2dmdwLnhnZgwA + AAB0MzJuM3huZS5kZWgMAAAAdWZvMG1sNWsuanphDAAAAGJqZmQ0cWNvLjRtZAwAAABkdnJmZW0y + cC51bGgMAAAAdGJ6Z2loM3YudHQ1DAAAAGlmeTJlcHVrLnNxNQwAAABmYWlsMzVieS5ycTMMAAAA + bTVlZ24yZmsuYWllDAAAADBsaGlrbHFrLm9iegwAAABsb3h0eHlvdS4wMWcMAAAAbXYzcm5lZW8u + cmljDAAAAHI0cnpyeWkyLnF3NQwAAABxcmJsMDVxei4wNWUMAAAAYXcycHJqYmEubTNhDAAAAGJo + Z3l2aXZqLmNiMwwAAABkbHhlcTVjMC5vcnYMAAAAbjN2MDRyaHAuYWV4DAAAAGQxcXZ1ZmltLnBi + dwwAAABveWVyanp2dS5wZm8MAAAAbnVheGtib3YucXB1DAAAAGtkeWRhcWlyLndjcgwAAAB3YTM0 + Y3VrMy5iZGcMAAAAZTVuMWl4anoud3JrDAAAADJycmk0MXBqLmV2cgwAAABoeHJqNHJzZS54Y20M + AAAAdzQxanFwemMueDF4DAAAAGJqbTJhdTNyLnR5eQwAAAB5eTFieDNtZS5tbHgMAAAAZ2I1MG11 + bzUudTNoDAAAAG1pd3Z3anQ0Lmo0aQwAAABxY3JpbWFoby5jbnYMAAAAdWdlc3R5dzEudXBsDAAA + AHNqczJ1NGVwLmdlMwwAAAB6NWZqc2N3Yi41NWIMAAAAaGxmeDFncXMucTRqDAAAAG0zbnduMGUy + LmhscAwAAAB2cm9iendrMS50cG0MAAAAaGFyYXF2ZGYuZDBkDAAAAG16YTR0NXNnLnV1dgwAAAAw + aGh2cGpkNS55bXAMAAAAcHByanQxbWIuZ3RzDAAAADE0dnJkemEyLnhtcwwAAAAzbWltdnF1bi5o + dTAMAAAAa2NsbGdqdGUuY2I0DAAAAHN6eGdsYWlqLjJvdAwAAABubWg0bmg1MS4xbjAMAAAAZ2Zy + b3ZieGwucWJtDAAAAGUwbnBsbndqLnlzZQwAAABkYWhodXF2Mi4zb3IMAAAAcHhuMXQzemkuYWNn + DAAAAHl0MDBodGtrLnd0dwwAAABwend4NTIzMi5ocWcMAAAAbXJ1eWx6dHQua3BiDAAAADBiaWNz + eXFvLmJxZAwAAABndnpwbnZ4cC5xbGwMAAAAM3V6bDFmaXUucmYyDAAAAG9mZGptbnN2LnVodAwA + AAAyeWhndHVzei4xa2YMAAAAMXcwYnhkY24ucHgxDAAAADFwbWx3Ymt2Lml3MwwAAAB5ampoa3Fs + bi5pdWIMAAAAMHh3MW95bG8udHdlDAAAAGtteml4cTR3LnUzcAwAAAB0djEzd3F2eS55dWIMAAAA + b2EyZzNlanQucmlmDAAAAGViZXBnanc1Lm10cQwAAAAyZnkxMzAzZy5ueXUMAAAAMGM1dXR1bWYu + M3RzDAAAAGZuY3RrY2JnLmMwYwwAAABibmtzZXdzZy53em0MAAAAeXlpajEwMW8ucGlqDAAAAHA1 + anlkbHI0Lmh2MgwAAAAzaXBjZGF3dy5hcXIMAAAAMDRtdzV6MnMudW0wDAAAAHdjdHBua2ZoLjJ1 + bQwAAAByenBxc2JzMC41dGEMAAAAdmFoeHF6MGMuMnBtDAAAAHZyMHNza29yLm4ydwwAAAB4dDUw + MHUyYi5yaGsMAAAAY3ZpeTI0ZHguY2t6DAAAAHU0c3dkb2x4LnFqZwwAAABqc2V0emMwZS5qaGUM + AAAAaGI1NGIxdGkuM3F2DAAAAGVyNXFzcHZyLnUxMAwAAABibzRpMnNmdi53MnUMAAAAbXpwdnNu + dWIua2xoDAAAAGtrMG14djBmLnNsbgwAAABjemJlbGVqZy5xaXEMAAAANXhob2txNTQuY29qDAAA + AHVyaWhzbjR5LmVreAwAAAB2dGFtaWl2MC5sd2IMAAAAbHhhc3g1eTQuejMyDAAAAG12dnJ2czFu + LmRodQwAAAB5ejJxa2h3ZC50ZGUMAAAAeGwyYWd6dHYuMXNmDAAAAHZnNGNybm0yLjNjYgwAAABr + NTVmNWtwcS55cWIMAAAAa2RlbGI0bWkucWNtDAAAADN4NWxldGk0LmtkYgwAAABqd3FnYnVtYi5p + cnQMAAAAaGVkbHlpNXQud3FsDAAAAGZ0ZXRzM2tvLmhtbAwAAAByZ2MzdjN5cC4xY3AMAAAAZ3Bo + MzNqcGwudHoxDAAAADR1eDNzd2l5LjNhMgwAAABuY211d3V1MS41ZjAMAAAAaGhrYjBrdzAueWky + DAAAAHZobG1ha3VwLmhzaQwAAAAyd3dkdXFzdy50dzEMAAAAamJmZ3FxeDUudHoyDAAAAG80dWk0 + a2RyLnAybQwAAAB4aWd3ZHBxZS4zencMAAAAamIwemtsbDEuMmFoDAAAADB3eHBpZWlpLmVndAwA + AABuNDNudG81NS5ueWYMAAAAeW1ocjFxeDUuMW9yDAAAAGY0bGZ3b3hpLm50ZgwAAABuemZyYmJ2 + eC5weXkMAAAAeWhyNXZvaXouMnVvDAAAADN5NXAyZXp3Lm55YwwAAABuNXFnYWgxbS5vM28MAAAA + cDNzMWUwMWQua2pnDAAAAGVxZDFoa2NhLnkzbgwAAAB2YTN1Y251ay4yMXAMAAAAYWVrYTE1Z3Eu + cXFkDAAAAGNwdDNvNGZhLnhzdwwAAABsMXMyZ3Fhay52cWQMAAAAanJvM2hzcDMuMmYzDAAAAGJz + Z2FhdTBvLnBvawwAAABybHgxZGVoaC56eHoMAAAAdmZlNGlibmMuYjJyDAAAAG5paTFtc3YzLnBz + dQwAAAA1cWtkbnR5ci5xa3QMAAAAa2Yxa3Yxb3kuaGsyDAAAAHh1bmd3dWlqLnViMwwAAAB2Ymx3 + MndldC5rcm0MAAAAanFkZ29tNWEudmMxDAAAAHk1amtjbG4zLmxwNQwAAABqcW1xeWVkdy5naWEM + AAAAMW9qYjIwaWEudnRqDAAAAHRmaXZkdjIxLmF4MAwAAABwaWQwaHpwcy5kdjUMAAAAd2ZnY2Rx + NGYueG8yDAAAAGNicDA1eG0yLnM1MAwAAABhMjAxYXBodi4wZjQMAAAAZGwxMnl6bXIuZWJmDAAA + AHgwZXZ5dHFyLmEydwwAAABnZm91NHlrMS55NXQMAAAAdzJqZHZsMmIuZmJ3DAAAADJ4a3c0eHhy + LnVpawwAAABneHFsaWdsMi5scHMMAAAAanN5dXl1emguZGhyDAAAAGRkem5lMGpnLmV2NAwAAAB6 + d3pkdXBjcy5mMWMMAAAAbHZzYWFsYzEubWxqDAAAAHhheDBhZTVlLnpjeAwAAAByZmRncm4xZS5y + ZHYMAAAAc201MnV4bm0uYjMwDAAAADF2cWt5NWZhLm54ZwwAAAB5Y3lreGVnYy4zYmwMAAAAajNq + MnV5ZGIuZ3JmDAAAAGh6aHozNG1mLnB6NAwAAABhMHJzaWUxci5pcTUMAAAAMGp1cmoyMWkuNDAz + DAAAADAyM3c0YnJ4LjNzMAwAAAA0em95YjRzdy4zbXMMAAAAcGlvMnM1MHAueGprDAAAAHBpYWpi + bXpyLmgzcgwAAAA1ZDMxeW5ndS54a3IMAAAAZ2dlMGMwdWEucmswDAAAAGpvZHIxbHVjLmk0cAwA + AAAxcmNrZDN5NC5pbWoMAAAAeGxhbXhwZ3YuMWp0DAAAADJlMGszMWJwLm4xdAwAAAB1MW1sazF3 + NC52bjIMAAAAa3Y1YWhldmoudjBuDAAAAGMwdDVyMm9jLnI1cAwAAAB4d20wdGt2bS5xbHkMAAAA + dWpqcW9pM3IuamoyDAAAAG5sdHl0amd4LjN3YQwAAABoZmF4Mnhydi5yc3YMAAAAdmdyYnlxdXYu + cXQ0DAAAADFqc3d4YWh3Lnk1awwAAAAza3Ftb3d3di5ia24MAAAAZDFocWk1dmMuY20yDAAAADFx + MGRseGNpLmhjcgwAAABkemJsazRyai52ZHYMAAAAZ3loeDBwNXQuZGlzDAAAAGNsaWY1b3h2LnQw + bgwAAABwYm52dzJ2Yy5oMDUMAAAAaWUxajNldXoudmMyDAAAAGNqcnNjaWp3LmJzcAwAAAAxcGxt + bjN3ai5kZzIMAAAAd3BxeW15cWMuZXBvDAAAADNteGpyYTBhLjVudAwAAABhcGxhZTVocS5ibG0M + AAAAc3VjajQwcG8uMzRjDAAAAHpiY2twcDQzLjV1agwAAABhbG5sYjRlNS5ibnkMAAAAYWl3amdz + cWUuZW1mDAAAAGswbzFsbTUwLmNxYwwAAAA0cm1tbDVlYi5xZXAMAAAAYXBpbWdvdGYueXE0DAAA + AGF6b3Jwd2QwLmR3NQwAAAB5M2x0ZGkzYi5xZXMMAAAANHhvbHRmcDAuZDV0DAAAAGhocDI1d2Fp + LnFxMAwAAAB4Y21obGJ6NS5paXIMAAAAbnpqd3p6MGYudmprDAAAAHhyMTFmNHVuLjJidQwAAAB3 + ZGhqeHBuei5neG0MAAAAMnh5bGlsM2wuazF4DAAAAHZzMXZqd2cxLmdqMgwAAABrMHRzbjRmaC5v + a2wMAAAAZDFqb2N6MmQuaHljDAAAAHF2MmpucTVzLmx5ZAwAAABxZHpwNWRyby4xcXcMAAAAa2Zh + YmkzdHYuaXRmDAAAAHB5NG9xeWRiLjJ6MgwAAAAyNGV0dGMwdS53MGgMAAAAZGZkNDN6dHcubWly + DAAAAGF6Zno1eWk0Lm8zagwAAAAzdDV1d2Ruby5tdHoMAAAAb3lsZjF4aHguZ2RqDAAAADR5bnAw + dmFuLnpidQwAAAA1enF4bXZqcC4yNTUMAAAANXFnc3F0Y2QuMmpkDAAAADRuMm5kMGlvLm53ZAwA + AAAxMm1qNWlrdy4yY3MMAAAAY3ZvZnd1dmwucXhnDAAAADBobHU1ZnJ1LmRjcwwAAAB4NGpoNXBk + ci51bzUMAAAAcWRxNHdib24ucWFyDAAAAGhvMHBhbHF4LnNocgwAAABhMmJ0bWJ5YS5xZ2UMAAAA + bGk1b3NwamouMGxsDAAAAHpldGgyMTFkLjBoYwwAAABsY2Y0NXkybi52bjQMAAAAZXpvemI0M2su + YTR6DAAAAHR1ZHVoanlyLmdnbwwAAABuZHBqaXJneC5rbHUMAAAAMnBsbXVrdHIuYnB4DAAAAGhm + eGxnb3RjLmcxYwwAAAB2cGtiMTF5Zy5pMHEMAAAAcW4ybmpvMTMuZ21sDAAAAHJpY2o0eGs1LnBq + bQwAAABqZ2RuMmN5Zi4zYW4MAAAAZDB3aGk0djEuY2wwDAAAAHAxbGdncnVzLnB5bAwAAABqb3R3 + cW95ei5jZjUMAAAAM3p1cnZ3Y2oueWZnDAAAAGkxcGFkdnVuLm96bgwAAABhdGhucnJ6di5pdG8M + AAAAc2Nmc21zZzQuc2lsDAAAAGdxZGp0MXNtLnZ4bAwAAAAzMG1iaDNraS5rYm8MAAAAZzRoZnNo + YWwuY2JpDAAAAHZlbmptanFtLnRmegwAAABhNTVpdnQ0My5zcWoMAAAAbGY1cG14YXguYWJ6DAAA + AGdtb3cwcmI0Lm13egwAAAByM3Nlemh6ai5xZzIMAAAAMGN2NHh6dzUuaXU1DAAAAHlzMjMzZm52 + LmNscAwAAABzaDJuZ2Fvdi5lY3QMAAAAbXFudG4ybXEuend2DAAAAG8ydHFzM2NuLjBxcgwAAABy + cnF5ZWt6di5pcnQMAAAAcDVxMXkzdmQucDV5DAAAAGUzYzVtY29qLmExcAwAAABtNXNxd2Nkai5v + bHkMAAAAeW1uaG40bGguZ2lpDAAAAGZ0ZmJrbXlyLmoxMgwAAABoc3ozcWdoNC53MTMMAAAAZWN0 + Zm9paHMuenV1DAAAADVsbHl5b2dhLmp0cgwAAAB2cmd5Mnl0eC5kMzMMAAAANXA1YW1ja2wuam1s + DAAAAGdrZXpkZmNzLjAwdQwAAAB0MzF2eHViaS55cmIMAAAAZzJ1MzJrenQudGllDAAAAGEzdG9n + ZnBjLjJ4MAwAAABrYzM1cDF2bC4wMXYMAAAAaml0MW9zNXcuanVjDAAAAGVia3h2bXExLjJ0aQwA + AABqYnd6cXVvbC54cDAMAAAAaHJrM2JwaHYuaW5qDAAAAHkweWNjbTQxLnQxbAwAAAB3aW55a2Ft + Zy5rMjMMAAAAaGtpamsxNTMuZTRwDAAAAGd4ZHprY3phLm1zbgwAAAAzaWtwa2tteC5xZjIMAAAA + YnRoc2dnNXQubnl4DAAAAG50M21pdGJ0LmowNQwAAABwamdpNTBuMC41cWYMAAAAM25uZGNobWcu + eXZrDAAAADRhaXdwMWVhLjI1dAwAAABobXhjMmxqcC5ja3cMAAAAd2lveTF5bmIuZ3gxDAAAAGdj + dDNqbzEzLjJwMwwAAAB0cTB1MnZwbS4wdDMMAAAAb21ncW53dzEueTUxDAAAADIzcmVlbjI0Lngz + MgwAAAB6amVheWVzZy56dWsMAAAAZ2trd2x4MGYubnNvDAAAAHpzdWl2em1jLnRmMwwAAABvMmt4 + bXBicS50bXEMAAAAdHBhbzNsMmgucG9zDAAAADBmbXozdHNxLndzcQwAAAA0dDIxaDB0Yi56dDIM + AAAAZXp1anB2ZXkuaWs1DAAAAHNoY2RzeW9nLmRlMwwAAABpdmt3ZWxteC5kaHoMAAAAc2JvNHRj + eXcuNHV3DAAAAHJzbnpkbWExLmFlcwwAAABjYXd3YW5pbi5nYncMAAAAajJvNXdkcncuZ3VrDAAA + AGF5MHVodG9mLnN5ZQwAAAAwYnQ0d2l6bi4yaWwMAAAAeHFtamtvNTUueGZwDAAAADVvdnlydHpt + LmQxawwAAABsY3VoaDR3cC5ldzMMAAAAYWJ6cGhhMTEuM2tkDAAAAHZ2MWVkcnI0Lm1rcAwAAAB1 + aXEwajFrei5yNXcMAAAAeHFydWd2NG8uYWpkDAAAAHo0a3hibjVmLmJjcAwAAAB5ZGVzcGpjZy5p + ajUMAAAAb25yMHJvZGsubGN6DAAAAGoxd2Z3eGVhLnMyNAwAAAB0cDRtNXR0dC53bXgMAAAAcGpk + Y3Bzd3MuYWoyDAAAAGtrcXgza25qLmh2ZgwAAABwdHJubm5jeC41ZW8MAAAAc2I1MTJ5YmouM3Jj + DAAAAHExenBoamN2LmNpaQwAAABwdGNka2ZxYy55M2MMAAAAZGl5bmJjc2gueHR1DAAAAG8yYTFi + ZjVoLmJlMAwAAABwMDBhc2psci5rengMAAAAM3hwYnRmYXMub2R5DAAAAHNwZmZ3bHhwLjRtcQwA + AABjZGMxd25iay5sbWgMAAAAYjBvbm5ueTQueHkxDAAAAGJ0cXdrNWpmLnhjYgwAAABncTR4c3dx + dC54ZjIMAAAAeHNheHVzbmsua2pzDAAAAG9pYzE0azI1LnducwwAAABsdnpvdzRpMy5jNHYMAAAA + ankzbWtueGUuajJ0DAAAAGxnNXI1ZnFnLmJwNAwAAAAxZWFqZ2JsaS5tcGQMAAAAbzBydHh1Ymcu + MWdnDAAAAG1panliYXlrLjRtNAwAAAAxNW9wZjIydC56aW0MAAAAMGJlaDRta2QueWVrDAAAAHVj + c2pka3FxLmJpbAwAAABwbjRndzJwZC5nZXMMAAAAem92ajRqYjUuMXVhDAAAAGMyMjN6Y3JsLmlj + cgwAAABiamp0NWRhNC5heDMMAAAAMnl6a3Fvc3kuZ3Z5DAAAAGJrNGVwa2hrLnVhdQwAAABzbG40 + cmZxYS5jMnAMAAAAdnB4aXh1dnEuMmR0DAAAAGtpdDJndzFhLmMzdAwAAAB3ZWowcGhmbi4xa2sM + AAAAdHh1aGhxcGUuNDEwDAAAAHhzeHR3NGgyLmZjdwwAAAAzZm4ycmR0NC5qZmMMAAAAYmdpMnN0 + YTEuams1DAAAAGlxbmRvamJqLnA1YgwAAAB1cG4zYnh5bS53NTAMAAAAbmdkdDBybnIueGtzDAAA + AGN2M25tMjJlLmN3MQwAAABqZmZqeWE0bC41aWoMAAAAcmJhbXB0NGkub3JrDAAAAHdveTFvZ3N0 + LmIyMAwAAABicHcyNHN6dy50am0MAAAAd3pmams0bDIuc2l0DAAAAHYxcXRtZzFlLnV0cwwAAABy + ajJjcWRycC5taDQMAAAAMGU0dWRxd3cucG9qDAAAAG5lazV6c25yLjB0MAwAAAA1am9zZG5oZi5n + dmYMAAAAbXd6aXA0MWkuaTQ1DAAAAGlqZmsxc2l0LjR3eQwAAAAxbXZ1eDFzcS55cHEMAAAAZnpi + Z2JocDUueW1xDAAAAHVpMTFkenFuLnR0bAwAAABqMTBiMDNsaS54NGMMAAAAMXJ4MHFuaXQueW96 + DAAAADJzc2puMWF2LnptbAwAAAA0bWMxMzR4dy5yNGcMAAAAaXRlaTVxa3oudXZiDAAAAHIxMWlk + ZW5sLjBycwwAAABzaWoxMDU1eC50eGsMAAAAamIxMTJkYnQuY3Z2DAAAAGIwd2tncGFuLm5xawwA + AAAzNXBlamIzZC5mZDUMAAAAMm5oeHB4MmQudDNlDAAAADFkbnhrbzRxLmRhdgwAAABhdzB5cWZw + by4xbTIMAAAAb2U1MnN0cXguMnJsDAAAAHBubGhjd2t6Lmt4MwwAAAB4bGdvNHgxdy5odXUMAAAA + bzRrNHJvNW0uMmdiDAAAAGF1azJ3dHhnLmVmMAwAAAB3ZzBkYWwzZy50bXIMAAAAa2p4MGVyb2Eu + cGYwDAAAADJnNHlwdHVlLjMzegwAAABoMjNpeXJlZS5qaWoMAAAAaGR0dzNsZWouaHdyDAAAAG5z + Y3JjdXkyLjFkbgwAAABrY2ZudjJzcS5qMGUMAAAAMjJxMHB3MmwuNWZsDAAAAHhoZWd5d3Z6Lncx + YwwAAAByMnhzaTVtaC5wbzEMAAAAcHp2dTV5bXYudXh3DAAAADVxZGRrYmJiLnFnbgwAAAAzZnM0 + ZDBnMS5qeHcMAAAAZW9meW9ueDUudHpoDAAAAHd2djRwcW0xLmV4dAwAAABweXZudXJ0ZC4zZGMM + AAAAaXhlNGF0czQudHEzDAAAADFycjMxNGcyLmQyeQwAAAA1YmRzeTR1cy4yMmQMAAAAamxiMGJ0 + enIubGt3DAAAADR1MGhiYWQzLnhyNQwAAAB2dmdrbDJjby4yeXQMAAAAa2c1anNqNXIubG96DAAA + AGkyaDNoZ3NhLnhkMwwAAABudnVkMTNicC5iNTQMAAAAYnAza21yd3AuNHUzDAAAAHd3MGFzc3l4 + Lmp6MQwAAABvaGJ1dXNwdS5ha3cMAAAAcmNpNHpxemQuNHNmDAAAAGZ1b2pmcTQwLmZ5dAwAAABt + YXBiazJpdS5jNHEMAAAAanUxdm8wbG8ubHF5DAAAAG1hMHNxZXRqLnF4cgwAAABxbnd1dGx6YS5n + eXkMAAAAamtybnJkdTMucW5vDAAAAGF2NHNsZ3cyLm5qNQwAAAB4a2xpamN2ai4zcjEMAAAAc3cx + YnZyMHIucWN3DAAAAHZydnI0amFwLnJkMwwAAAAzM2pqYXBhcS5xbGMMAAAAczFwZ3psaHgueXRw + DAAAAHBseDN3aWh0Lnp5bwwAAABwY2llMGp5Zi4ydGEMAAAAd3NocmV0dGYubzAyDAAAAHNyZXZ3 + eGN4LmY0dwwAAAAyZjNleW4yeC5nc2MMAAAAZXF3MGFsZnUud2JrDAAAADBpdDFtZnhzLmpxMAwA + AABpbHl4dXR4ei5tNXoMAAAANHJobG9pcjAuaTAzDAAAADJ2b2NmZzNtLnhycwwAAABkd295eWll + aC5wZWMMAAAANWIycGk0NWEuZGk1DAAAAHlkbWRrMWJwLmtlaQwAAABqaWRjNW5paC41enEMAAAA + MDJnYjJ6aXQuM3VtDAAAAHE1ZmFjM2p6LnczaQwAAABnZmswc2JjMy5wYWsMAAAAd3Nnd3B0d2Iu + bG8xDAAAAGRtd3FycXpvLmthdQwAAAB5ZWVrbGp3YS5oZWwMAAAAdHpoNHN2dTIuaHp6DAAAAHBj + bXhrMWZuLjRseQwAAABjMWt1M3p2bS5hMXAMAAAAa2owMDExNWUudXZnDAAAAGJuNHN5cWdrLjBj + MgwAAAAyb21sNWJ2NS4zdGsMAAAAdzB5eHBjd3cubWwwDAAAAGQxZmNqYmsxLnFseAwAAAAzcmhv + M3Rkdy51MnoMAAAAb2FrdGoyZGMuZjVuDAAAAHoyaTF4MTIxLmY0eQwAAABra2lldXZ0NC5zY3gM + AAAAeHJweXVia3kub2NwDAAAADVieXR0Z29oLmRtMgwAAABkYXYzYmpvdi5waTIMAAAAb3NoaWh4 + ZG8ueTFwDAAAAG0wYnJramU0LngwagwAAAB4ZHU1ZXg0cS5memUMAAAAeGVnNDBib2QudWp3DAAA + AHBnMXYzczJiLjN0egwAAABuc2FqdWY0ci52dGcMAAAAY3FrdWtzbHIuMjJwDAAAAGZ2dmh3aWs0 + LjF0NAwAAABkanRudmJwdC5seHQMAAAAa3Nkdm1wMzEuenNzDAAAAGF3cHczZGpiLjBnZAwAAABw + b21kYzF0cS52amgMAAAAZHJqZm9pbnUuejQzDAAAAGYyc2NpaHI0LjJubQwAAABweWR1bGNpYi56 + YzQMAAAAMDF3d3llNGcucGZzDAAAAGNxd2ZnaG11LnYydwwAAAB5anphNGJrbC5ocWcMAAAAbG5q + MmpyNW0udGJtDAAAAHl2MG9tcWl6LngxdAwAAABzYXNueWEyZC40d28MAAAAem5iejRoYmQubHoz + DAAAAHZ6MzFuYXNzLjM1cgwAAAAxc2I0bnlsZy5yejMMAAAAYTQzemVkaW4uMXYyDAAAAGV5YTUw + cnZmLmg1YQwAAABkMXV4YnFkMy53bjQMAAAAMHRsNTU0bWYuZnMxDAAAAHlmendwNHlxLnp5bAwA + AAAwYXNiZHJuci5yYXcMAAAAbjNqeXZrdnAuZ3doDAAAAHJja3A1c2ljLm1mawwAAABrZWVmcG1n + Yy50dGcMAAAAcXAwZXlrdDMucTRxDAAAAHowc3UwZ3c0LmxwaAwAAABkNWZ4cXpldS5ua2kMAAAA + bTVraGpscHcuZzMxDAAAAHRjMGtqeXF1LnV5ZQwAAABhaG5ncmlvdS56bWUMAAAAaGVxa2R1bHUu + dHE0DAAAAHlwZHZ3MXRtLnN0dQwAAAB2ZHc0NG4yMC5lcHkMAAAAbGN6aTQ1MnAuaWEyDAAAAGEw + cmY1azRwLnQwcwwAAABhcWg0YWc0bC5uZ2MMAAAAZWNwdWE1cWkubWd0DAAAADV3b25lcTUyLnJn + dwwAAAB3NW9rNWp2ZS5xbHcMAAAAMnpjcWJrZmEubGVvDAAAAGR1eXpvNXVlLjNuYwwAAABqNG9n + MnlzdS5sd2kMAAAAZGttcWp6ZTMuYjQyDAAAAGVmZ2FvcmRxLnhyeQwAAAA0bzNhY3B0ZC41c3EM + AAAAa2J5cHJpMm8ubGJnDAAAAGtxZ253ZXJ4LnB3dwwAAAB6dXRnenA1bi52enUMAAAAZHZycHZ5 + M3EuejJzDAAAAHNidjFqcGh3LmdyYwwAAAB6ZDFoaDFsdy5wZGwMAAAAYW1veWtvZGkuNW9nDAAA + AG1uMWkzYjMzLmF5YQwAAAB2cHllbGFvci52M3IMAAAAeWpibmgwcGouMzF2DAAAADMwcndocHBs + Lmt1NQwAAABrdWJwcWxvYi53MXkMAAAAazNsZm9pbWEudGtmDAAAADNleGlsbXB2Lmp6aQwAAABs + YWF1bW1nby51em0MAAAAMHIwcTV0bHkud2ZwDAAAADN4YTBxZ2x5LmljcgwAAAA1NHBhMnBtdy5y + amkMAAAAYW9nZWs1dzEudzMzDAAAADNvZ2t3cWVvLmhpaQwAAABpZmxlaTFuMS5idGsMAAAAYmxk + d2R0b3Uudmk0DAAAAGFiMXNhdGo0Lm1xdQwAAABkd2ViZGwwbC5tcjIMAAAAYTRxZG94ZWsuajMx + DAAAAGszMHA1c2NuLnRsMwwAAAB1MHoxMHloby5pbXcMAAAAY3lrampkMWMuNGd5DAAAADVqM2wx + MHEwLnlmcgwAAABhdXF6cmp1aC5ld2QMAAAAemdubGx6bnUuc3FvDAAAAGI1ZjNmcWRpLjB5NQwA + AABzeWpobG9pby41YnMMAAAAcDVucm4weHkuMmkwDAAAAHVkeGxjdmdtLmpnagwAAAAzZmMwZXdi + bS5lYXUMAAAAejFkMHVvdDAudnNqDAAAADIzeTNzZnFjLmZnZAwAAABxMnRmYjB2ay5uMmQMAAAA + a2xieXcwczUuZ2ozDAAAADN0bWhjaHExLjFxdQwAAABjZXU1M2o1dy5rcXYMAAAAbWRjcGVld2Iu + NXhxDAAAAHl6MmFpd3k1Lm9scAwAAABidHZycTFiZy5jeXIMAAAAeXlhbGJ1Y3MuYW5nDAAAAHAz + eHRvcDFpLnFlZwwAAAB3ZXdrM2dmZC5uaW0MAAAAZm1qb2d4b2cuNTU0DAAAAGVydTJsbmowLnN1 + dAwAAAB6bG5xa3hnYS53MHIMAAAAZXgxeDB1MXUuYnpuDAAAAHZmeGJidWFkLm5tNQwAAABidmo1 + eWxwZC53ZnYMAAAAZW5rY3FzNTUudGx0DAAAAHdsZzBxcWh2LnNyZwwAAABvZWVrcjJ0eC51aXkM + AAAAdmh0aTB3cXAudWYxDAAAADV0cXh0enYzLnk0cgwAAAB4ZXdlbGRrdi56YXEMAAAAamJ4YzB3 + dWkuMWlkDAAAAG9rdXB6MnN2LmhmaAwAAAB1MWJ5eDFlbi5taXIMAAAAaGhwejQyeHQuZ3F4DAAA + ADBxbDMzZXk0LmMwagwAAAA1bTVsbjVsbi4wdTIMAAAAcnN0a2JxdWwudWQyDAAAAG94MDQ1azFv + LmdtbwwAAAB0dWRrcW0wdS50dmwMAAAAY2ZjMWlvam8uNGluDAAAAGozcGM1c20wLm1sYwwAAABp + c2Q0MGpzdC50ZmcMAAAAazM0ZHdjd2IuejNtDAAAAHZleDV1c2RvLm1nYQwAAAB5ZWpnb2d4by55 + bnAMAAAAdjRvbjB1bGwucHlmDAAAAHB3MmUwbHpzLjVnawwAAAB2enEzMW94Yi50djMMAAAAeHFz + MGthZ3QueTV4DAAAAGhyYmlrNGllLnNndgwAAABjZWtsNDBzaS5ycnkMAAAAMDV0Y3h0MmwucXo1 + DAAAAHF4bHZnczFiLnVjbAwAAABnMndsNDBrMS5qeTIMAAAAdWExcnIxZGwudWVlDAAAAHFzdWdu + eXZmLnhycQwAAAB6bXoxd3V0dC40bzAMAAAAYTJuajNxZ3kuajR6DAAAADUxeW01YmhxLmVybAwA + AABpMXJsMnBlYi5odmoMAAAAcWJyanptcnUubWZqDAAAAHljNWdrZ3lsLm1wdAwAAABkZDV3dGh5 + aS5xeGcMAAAAa3dlZHV2cG4uZnRhDAAAAGFqZDNkdjBoLmtqYwwAAABocGdudG5qaC56dHIMAAAA + eDRmYWF5b24uemd6DAAAAGRleDR4YjVsLnJtbQwAAAA1NWZvcXJybC4ybXUMAAAAd2lrdXB4b2ou + c2V1DAAAAHVkYWxnenR0LmMzbwwAAAA0czJ6aG15cC4waTEMAAAAMHB4MWRpY2wucWd3DAAAAHVx + YTF4bGRxLnQydgwAAAB1MXF1aHRzdi5xdXUMAAAAMnMycmJmdm8uanZpDAAAAGQ0bDQwbGJxLjUw + ZgwAAAB4YTNsajR3Yi5udHYMAAAAam9jZnc1dmQubG5tDAAAAHowYmNsa2R1LmNwawwAAAB3MGpv + Z3BzMS5hNXUMAAAAMDM0bDBvaDEuNWh2DAAAADNzY3Vzd2JzLnl3aQwAAABidXp6MmpuMi52MzUM + AAAAa2V0c2IyeHQuaXgzDAAAAG01a3RycmtsLmJmNQwAAABkeXVqMXRydC5rdXgMAAAAYzExcG9l + MDMuaHJjDAAAAGJvd2lyZDQzLmI0YgwAAAB6M2E1eDR6dS41em8MAAAANWw1MWswdGsueGRsDAAA + AGZzNXgyYWxuLmpkZwwAAABpcno1aHAxcC54dzEMAAAANDRobGZsdjQub2lpDAAAAHVzMzMyMDJy + Lm1tbQwAAAAwZGV2aGIwMC5lbm8MAAAAeWdva2FscHQubXpuDAAAAGx5ZmNscmh3LnJ0NAwAAABk + a3hrY2l1ai4zZnAMAAAAemtkbHNwcjEuaHQyDAAAAGE0aDNvMmFyLnBzNQwAAABxd2YwM2lxZC5o + ZmUMAAAAanl0cHZ2YWEudWYwDAAAAGFvdno1ZjRhLmlhMAwAAABjdjFlMnhvdS4xbngMAAAAbGFs + bzVncmoueWV6DAAAAHgzanRjbzRjLjJsaAwAAABycDR0c3ZibS5oa2kMAAAAeTB2MjM1eG4uMG5m + DAAAAG56eDR2MXBpLmNlMAwAAABocWFleXd2by5zazAMAAAAcXMwYmRudjEuNDVjDAAAAGhpM3p5 + cjFsLmlidgwAAAB6YzJoM28xdy5iMnUMAAAAZ2F5eXo1dDUuNWNlDAAAAGZhZXEwdTNrLmZndQwA + AABtcmZwZ3FzdS5ldm4MAAAAY2hlbTRsb3kuZnMyDAAAAGlyc2xnb2hkLjVibgwAAAB2YWR0YXNs + aC5oeGIMAAAAZnhpMmwyeXAuNGdhDAAAAGd1aHFibjExLnVyagwAAABmcTJ5bmZiMS5tb3IMAAAA + Zm50aWR4dHEudDJjDAAAAHNxenZhcnQ1LnlmZgwAAABnbDEyZ2ZxMy5nZWYMAAAAcWNtYmpha2cu + cGc0DAAAAG4wanFyaDNjLnBtdQwAAABpNGdmdmN0Zy5sa3gMAAAAeW1vNXlsengudmt3DAAAAHZ1 + bWFocGV0LmVqMAwAAABza254ZXVhby41eG0MAAAAdHF5bmFoaGcudW8zDAAAAG4zMm00aGVkLnRt + cgwAAAAwcHVpbjRwdy54NHAMAAAAbGgxZTBjM3QuamNlDAAAADBjeXBuZGVwLjNrdwwAAABrdWg0 + NGp3aC53c3IMAAAAb3UzNDFwd2sud2lxDAAAAHBobWZtZ3dkLmlicAwAAABhc2szdXNzcy56YjUM + AAAAaHgwYzFnZmIudXQzDAAAAGFxaWloMGxlLnYyawwAAABleHVlaWVmZi5sc3gMAAAAa2pmMG9u + bmIueTNiDAAAADJ5dG1vZHpwLnMyZQwAAAB3NHczZjUyai5vaGEMAAAAajJuamJtZHEuMTRhDAAA + AG1xenExcGptLnM1NAwAAAA1ZjBvb2h4My4xamsMAAAAaWJxcjUwanAudmVnDAAAADFsM3phZ3F4 + Lm80cQwAAABueGN4MzBpbS4wdDAMAAAAb3ZkYmVnZGcuMWRmDAAAADR3MTJncHAzLmRycwwAAABx + MnlkYjJtci4xNGQMAAAANWZyZHJqNG4udmduDAAAAGtua3B5MGtvLjFucAwAAAA0aW54a3YzZC54 + eWgMAAAAYm1ucnBscWcuMHdxDAAAAHh5Z2U0ZDM0LjQ1eQwAAAAzbGN1aGZpcS4yYWYMAAAAeGtp + NXYxMGguZHkzDAAAADA0bWJzeWJzLnAzdQwAAAAzZXlpYjNqMi5sZ2sMAAAAeHlxZXE1ejMubTRh + DAAAAGtqcG9ud3hqLnNjYwwAAAA1a3EyYm0wby52azEMAAAAcnNjc21uNWkudzFuDAAAAHptNWtp + Y3JyLjV4ZgwAAAB3dGVvdHcxci54dW0MAAAAcXZkMDIzemguYmNwDAAAAHlranlrY3F4LnJqMAwA + AABqZHQxYnV0Zy41d2UMAAAAbW53ZjJnbXUuM3hxDAAAAG1nb2VrdTNhLnl3ZAwAAAA0bnAwdGdo + NS5ybWoMAAAANHF2c3JndnIudnBqDAAAAHhjZGN6cnl4LmZhcgwAAAA0azEwdnV6by56d3cMAAAA + b3NhZHYyeWouc2RnDAAAAGx4c2VsYXF2LjJjYwwAAAB2dGkyMDE0di4zY3YMAAAAaGNhMGx3cjMu + eGp0DAAAAGJqbnIxMHN6LnM1eQwAAABzcjVvZ25jNS5ocHMMAAAAYTJqaHRxeWIuczVjDAAAAGtm + ZG92aXptLmljdwwAAABvZDMzNDVvMS41MXoMAAAAY2VzM24zdjIudm53DAAAAHZycDBncG1mLnky + YQwAAAB2MDFmYWJsYi41djUMAAAAanIwZnRoYWYuNWJ1DAAAAG4xdnYxdHN1LjFpbAwAAABnZjFi + aDV6by5iNWkMAAAAY25sNHhpM3Uuc2NkDAAAAHMxaGpub2t0Lmx3agwAAABqbmE1em0wYy5hb3gM + AAAAY2phenp1bXguNXE0DAAAADVvaW81bWN4LnoxMQwAAABrbm41cW1ueS5kbDAMAAAAbTNkd3Jx + MmEuMnJ2DAAAAGJ3YmlmM20zLm94YgwAAAB0aXdpb3VsaS4yMmMMAAAAMXU1cjFuYXoueWhjDAAA + AG52MGgxNHRzLnBpeQwAAAB3cnNzY2htcy5obWEMAAAANXF4MG81MmIuZnlwDAAAAGJuNHJ6aXNy + LjV5cwwAAAB1cmZvMmJxYi51Y3cMAAAAc3ZlZ3Rpb2UuaWNzDAAAAGZ6aWpmcGpsLmMwagwAAABn + M3lwdTJobS5qanQMAAAAd2llaG1mejIuMTJkDAAAAGQ1eXViM3NuLmRoagwAAAAyZnZ3eGlsdi5p + d2gMAAAAdTV4NWtwMXguenJlDAAAADEyc3Q0MDVnLmJ4dQwAAABucWZtMWJvZS51ZG4MAAAAdGxh + czJ6Z2QuZWswDAAAAG0xdmhyMWl6LnhucgwAAAB6cHpuNHczeC5uM20MAAAAYnNqbDBudmkuaW5o + DAAAADJ0amlwd2J6LjR5NQwAAABnZ3BrZGxvdy5vd2QMAAAAZHpoM2NmYXguNWZmDAAAAGlnM2x0 + ZWdkLjVpNQwAAAA1eTBnZWszdS5pMm4MAAAAa2JiZGEza3MubWl0DAAAAG1mbzF0amV4LjR5bAwA + AABlNXFpNXppYS5sMXgMAAAAeTRjNHZsM3EuMnF6DAAAAGRhZHhtMjN4Lmx4cQwAAAB6amlqZGV2 + cS55bmEMAAAAM290ZXByancubW93DAAAAGQ1NXA0b3BjLng1aAwAAAB4bGE0NGYxaS5jbmIMAAAA + NTFiNWZndXkuaDB4DAAAAGdsb2RnM2lmLmlyMwwAAAAwZGR2anNhZS5vdWYMAAAAZG5qd25lcnYu + ZGZ4DAAAADRoYXA1c3ZsLmowMQwAAAB2a3JsbHFndS5zemcMAAAAMTEyYnFwcWYuaWMzDAAAAGtw + NHhyeWdmLm9tawwAAAB1dWx6bmFwdS4yaGQMAAAAb2V6cmgwc2kuajJ4DAAAAHNudnF3aGkxLml3 + aAwAAAB6aWZsa24zcC5sMGoMAAAANGJ5ZnhkMDUucGJxDAAAAGRsc2Fpb2FzLmhzMwwAAAAweGZh + dDNxei5vYWkVABWO+gEVjvoBLBXQDxUAFQYVBhwYDHp6cTBrZnk0LnZibhgMMDF3d3llNGcucGZz + FgAW0A8YDHp6cTBrZnk0LnZibhgMMDF3d3llNGcucGZzAAAAAwAAANAPAQwAAABtZGlmanQ1NS5l + YTMMAAAANWRtdnFldmcuamswDAAAAHNmdGdtZ3N4LmIxZAwAAAB6cm9xdnM1dC5samkMAAAAYW8z + amF0bmMuMXZoDAAAAHUzYmZ1dmRsLjF3cgwAAABqcWN3M2VyMy5sdDIMAAAAc2gxc3doZXQuYncz + DAAAAGkwc3EzMDVvLmg1dQwAAAB1NTNjZWxhMC5zZ2IMAAAAemZybTVobHEud3J1DAAAAGN6Y2Nr + a3QyLnJpMAwAAABxMG40NTJlNC51bnkMAAAAanVvenVtYWEudmZ2DAAAADFtdGZvMTNtLnhlaQwA + AABjd3RhZWQyci5xZHcMAAAAM215czB5a2YuYWdqDAAAAHZlYXVpbTNtLjNhMwwAAAB1NHh1cWZx + ci5ubXEMAAAAbHd1aG5kbTAud2pmDAAAAGtqdXkycm50LnVqdAwAAABxeGNpd3JpMS5seDEMAAAA + bHBlYnRqNXcuZmMwDAAAAHp0aWoxcWNiLml5MwwAAAAzbXdyZXpwMi5xaTAMAAAAYXoyamF3M2Eu + Y2RmDAAAAHBjanpvdzF1Lm0wMAwAAAAzZHlxdmg0MS5wYWMMAAAAMGFqY3lkcHMuYTRkDAAAAGI1 + MnJtY2htLnNoZQwAAABwczBzZGZzei5lcmMMAAAAZjUxdDNkaGIuanZjDAAAADV6cmhzYnpqLjF4 + YgwAAABqMmxtZnpzMi5xZmIMAAAAcjBlcngxaXQuaXRyDAAAAGpiMGRzdTAxLnBlbwwAAAAzd2ow + ZGsybi5hczIMAAAAem5iemhnaXAuY2xxDAAAAG5xYmJwcHJ1LmZncQwAAABncDF4emYxZy4zeGQM + AAAAcm95ZG9udWsuYjJqDAAAAGVlZ2czY3FzLml0eAwAAABtNHYxd29sdC40bGgMAAAAcHV4MHp5 + ZGMubHZsDAAAAGRiZGZtc3IyLmlrNAwAAAB1cXQ1c2EzaS5hbmsMAAAANWpjaWpoMWcua2dtDAAA + AHIwbm50eTRwLnFlMAwAAAA0eGMxcGMzai5vemYMAAAAZDN4dzNoZ2EuYWZkDAAAAHZlMHVtZnl5 + Lms1agwAAABhcHljZ2h1aC5hbHIMAAAAY3l6Z2twaDQuM2ljDAAAAGJjZTJ5dmNxLmhhbQwAAABv + eGxhdGdudy5hdG8MAAAAdGpnb2tzZTIudTRzDAAAAGt1MWw1NDVkLnB3ZgwAAAB1Y2VhYmxjcS5o + dnUMAAAAc2x3dXZjaXkucXlmDAAAAG9seWMwcml2LmhuYgwAAAB3cmN6bXEwbC5yZ3cMAAAAc3F3 + aTVla3UuZnl6DAAAAHdua2VzY25rLm5kbwwAAABoajRzbDVqMS5mdXkMAAAAczR4bmJoMmMudGgw + DAAAADVobHZvZ2l3LndtMQwAAABjcTBuNDVwei5mc3AMAAAAemYydndqaXIuZXVxDAAAADVqeHZk + NTMwLnp2NQwAAABqc2N2b3ljYy5xcWcMAAAAbHNqbnp2ZmIua3J3DAAAADRwYWliaHoxLnYxcAwA + AAB1cmkwMmFjMy5zYnkMAAAAbWc1cXdiMXEudGVqDAAAAG5sYmd5b2k1LmZkZwwAAABrM3ZiMW1v + by5xYWsMAAAAdmN5Z3FzcWUudXZiDAAAAGRobWFheWc1LnNrYQwAAAB0dW9sZ3lobS5seGQMAAAA + cW1mdXJrMWcucmNnDAAAAHMyZmdlMDAzLmNkMQwAAABpM25sY256dy4wNGwMAAAAc2UxNHJmeWwu + cG1zDAAAAHR0eW9kc251LjQ1ZQwAAABtcmQxamJ0Zy5uZjEMAAAAeWNtcG5ldzQueTFnDAAAAHd6 + dmF6cHZqLmFoeAwAAAA1bXVyNGt2ei5mZWoMAAAAM2NoYnN6dmYubXl2DAAAAHBldGsyZzVxLmxn + ZwwAAAA1bTU0Zmdnby5rdjUMAAAAeXptczVvMHMuNTN6DAAAADB4NTRsZHN5LmdxdgwAAABnZWlz + emdhMS53ZnIMAAAAamExY2xhdHcuNWNpDAAAAG9ydHVzdnlwLnp1dwwAAAAyYTJueHNxbS5hdHIM + AAAAeW5sNXR0eWgubTVsDAAAAG5xY2k0bjUxLjM0dAwAAABrMjRraXpsZC50aXQMAAAAcHBwZmNw + MmQuenRxDAAAAGtnbGl5ZXN0LmFmdgwAAAAzbGFlb25nbi5qenoMAAAAaDA1djA1YnQuc253DAAA + AGVrZGp0Y3U1LjNicAwAAAA0dmp3eTJhei5kc3cMAAAAYzR3MjF6ZXAuYWNzDAAAAG1hZmtrdGh1 + LjN5dAwAAABqaDV2ZGx6eC54aGIMAAAAanYzZ2lhMDAuemFxDAAAAGxucjAxemRkLmh0eAwAAABt + bmNkZjRudS5idnQMAAAAY3l1ajNjcjUuYmVhDAAAAGt2cG5kem94Lm1vbQwAAAAyZjB0c2Vuby5t + NWkMAAAAcTJvbGRtbDQuZHlyDAAAAHFqMTBqY3BjLmhrdwwAAABjMXZ3bWtvYi56azUMAAAAdWRt + NGFiMXMuM3FtDAAAAGtxZ2I1ZndsLnV6MwwAAABla21uYjBoZC55c3IMAAAAYWdqYnNrbnIuMmd5 + DAAAAGZwNGRqamxsLm1meQwAAABibzVkZW1oeC5taHcMAAAAcnppZ29ldWkuYnhkDAAAAHhhZmUw + aWlrLnQ1ZQwAAABybXZreHN6ZS5id2EMAAAAaHRxNWZndm8uaGdlDAAAAGczeXBicGprLnY0ZQwA + AABtbXYwb3lieC5rM2cMAAAAZGhqMGIxY3kudm5tDAAAAGJoYm5kZGRjLnp1cgwAAABid2NicDQx + ZC55dG4MAAAAZGhoZ2d0dGkuMWhrDAAAAHFwa3J2MW40LmlvcAwAAABnMGNsdDUxbS5wYnEMAAAA + bnhsbGRhYW8ua2RwDAAAADBucTV0Y3J3LmpldAwAAAAzNDAzbW9tai5nbGgMAAAAcG1kNHp6aGsu + eXJzDAAAAGYxcmMwNGp0LjFrbAwAAAA0dXhmc2loaS5tMHUMAAAAZWx6Z2t4dmoucmplDAAAAGxr + dmY1b3gyLmpqMAwAAABhejIyNG1qci5zZ24MAAAAemYwemFwdW0udnZjDAAAAGNjZnBqMG95LjRp + ZgwAAABtazB4dXZ5MS5pMjEMAAAAMjRmbjJ6eHIudGtqDAAAAG96eWZ1b3JuLjFybgwAAABhdnN3 + dTF2Zy5vYXMMAAAAcmNtaHhvczMucnptDAAAAGhyajVmZ3NnLjM1MQwAAAB0eWlibmV5bC54aHQM + AAAANXIzZHV6b2cuamlnDAAAAHBuMXJ5ZWFnLmV1bAwAAAB6MmFsbXJ6ZS5tdHkMAAAAenpxMGtm + eTQudmJuDAAAAHJ0cTBkZG9nLjV1ZwwAAAB3ZXRlc2hteS5kYW0MAAAAZWc0M2tvMG8uamhnDAAA + AHNxaGdhaW1wLnQ0YgwAAAB6cDRtdmh1Yy5xbW0MAAAAM2dnd3F3aHYuZ3MzDAAAAHd1emNxb3Z4 + LmZqMgwAAAAxbDFtNDFiai5nZHcMAAAAdnFib3FrcHQuMzJ2DAAAAGU1bTR0MmVxLnhsNAwAAABm + MXhtMTN6eS5langMAAAAMXNlcTVjaG0ub3BoDAAAAHgzYmt3Z3JyLjViYQwAAAA1MXNqeWNncy51 + bWgMAAAAMHNrdmJvanEueTBoDAAAAHo0anJ5YmYwLmVvbAwAAABxaXNmbDRsci5iZXEMAAAAb2xm + Z2RhYnoud3djDAAAAGFnem1oeHV1LmN3aAwAAABiNXB4bTR2dy5yamIMAAAAbTBzb28xanYubG5x + DAAAAHJ4dWJ2dmdwLnhnZgwAAAB0MzJuM3huZS5kZWgMAAAAdWZvMG1sNWsuanphDAAAAGJqZmQ0 + cWNvLjRtZAwAAABkdnJmZW0ycC51bGgMAAAAdGJ6Z2loM3YudHQ1DAAAAGlmeTJlcHVrLnNxNQwA + AABmYWlsMzVieS5ycTMMAAAAbTVlZ24yZmsuYWllDAAAADBsaGlrbHFrLm9iegwAAABsb3h0eHlv + dS4wMWcMAAAAbXYzcm5lZW8ucmljDAAAAHI0cnpyeWkyLnF3NQwAAABxcmJsMDVxei4wNWUMAAAA + YXcycHJqYmEubTNhDAAAAGJoZ3l2aXZqLmNiMwwAAABkbHhlcTVjMC5vcnYMAAAAbjN2MDRyaHAu + YWV4DAAAAGQxcXZ1ZmltLnBidwwAAABveWVyanp2dS5wZm8MAAAAbnVheGtib3YucXB1DAAAAGtk + eWRhcWlyLndjcgwAAAB3YTM0Y3VrMy5iZGcMAAAAZTVuMWl4anoud3JrDAAAADJycmk0MXBqLmV2 + cgwAAABoeHJqNHJzZS54Y20MAAAAdzQxanFwemMueDF4DAAAAGJqbTJhdTNyLnR5eQwAAAB5eTFi + eDNtZS5tbHgMAAAAZ2I1MG11bzUudTNoDAAAAG1pd3Z3anQ0Lmo0aQwAAABxY3JpbWFoby5jbnYM + AAAAdWdlc3R5dzEudXBsDAAAAHNqczJ1NGVwLmdlMwwAAAB6NWZqc2N3Yi41NWIMAAAAaGxmeDFn + cXMucTRqDAAAAG0zbnduMGUyLmhscAwAAAB2cm9iendrMS50cG0MAAAAaGFyYXF2ZGYuZDBkDAAA + AG16YTR0NXNnLnV1dgwAAAAwaGh2cGpkNS55bXAMAAAAcHByanQxbWIuZ3RzDAAAADE0dnJkemEy + LnhtcwwAAAAzbWltdnF1bi5odTAMAAAAa2NsbGdqdGUuY2I0DAAAAHN6eGdsYWlqLjJvdAwAAABu + bWg0bmg1MS4xbjAMAAAAZ2Zyb3ZieGwucWJtDAAAAGUwbnBsbndqLnlzZQwAAABkYWhodXF2Mi4z + b3IMAAAAcHhuMXQzemkuYWNnDAAAAHl0MDBodGtrLnd0dwwAAABwend4NTIzMi5ocWcMAAAAbXJ1 + eWx6dHQua3BiDAAAADBiaWNzeXFvLmJxZAwAAABndnpwbnZ4cC5xbGwMAAAAM3V6bDFmaXUucmYy + DAAAAG9mZGptbnN2LnVodAwAAAAyeWhndHVzei4xa2YMAAAAMXcwYnhkY24ucHgxDAAAADFwbWx3 + Ymt2Lml3MwwAAAB5ampoa3Fsbi5pdWIMAAAAMHh3MW95bG8udHdlDAAAAGtteml4cTR3LnUzcAwA + AAB0djEzd3F2eS55dWIMAAAAb2EyZzNlanQucmlmDAAAAGViZXBnanc1Lm10cQwAAAAyZnkxMzAz + Zy5ueXUMAAAAMGM1dXR1bWYuM3RzDAAAAGZuY3RrY2JnLmMwYwwAAABibmtzZXdzZy53em0MAAAA + eXlpajEwMW8ucGlqDAAAAHA1anlkbHI0Lmh2MgwAAAAzaXBjZGF3dy5hcXIMAAAAMDRtdzV6MnMu + dW0wDAAAAHdjdHBua2ZoLjJ1bQwAAAByenBxc2JzMC41dGEMAAAAdmFoeHF6MGMuMnBtDAAAAHZy + MHNza29yLm4ydwwAAAB4dDUwMHUyYi5yaGsMAAAAY3ZpeTI0ZHguY2t6DAAAAHU0c3dkb2x4LnFq + ZwwAAABqc2V0emMwZS5qaGUMAAAAaGI1NGIxdGkuM3F2DAAAAGVyNXFzcHZyLnUxMAwAAABibzRp + MnNmdi53MnUMAAAAbXpwdnNudWIua2xoDAAAAGtrMG14djBmLnNsbgwAAABjemJlbGVqZy5xaXEM + AAAANXhob2txNTQuY29qDAAAAHVyaWhzbjR5LmVreAwAAAB2dGFtaWl2MC5sd2IMAAAAbHhhc3g1 + eTQuejMyDAAAAG12dnJ2czFuLmRodQwAAAB5ejJxa2h3ZC50ZGUMAAAAeGwyYWd6dHYuMXNmDAAA + AHZnNGNybm0yLjNjYgwAAABrNTVmNWtwcS55cWIMAAAAa2RlbGI0bWkucWNtDAAAADN4NWxldGk0 + LmtkYgwAAABqd3FnYnVtYi5pcnQMAAAAaGVkbHlpNXQud3FsDAAAAGZ0ZXRzM2tvLmhtbAwAAABy + Z2MzdjN5cC4xY3AMAAAAZ3BoMzNqcGwudHoxDAAAADR1eDNzd2l5LjNhMgwAAABuY211d3V1MS41 + ZjAMAAAAaGhrYjBrdzAueWkyDAAAAHZobG1ha3VwLmhzaQwAAAAyd3dkdXFzdy50dzEMAAAAamJm + Z3FxeDUudHoyDAAAAG80dWk0a2RyLnAybQwAAAB4aWd3ZHBxZS4zencMAAAAamIwemtsbDEuMmFo + DAAAADB3eHBpZWlpLmVndAwAAABuNDNudG81NS5ueWYMAAAAeW1ocjFxeDUuMW9yDAAAAGY0bGZ3 + b3hpLm50ZgwAAABuemZyYmJ2eC5weXkMAAAAeWhyNXZvaXouMnVvDAAAADN5NXAyZXp3Lm55YwwA + AABuNXFnYWgxbS5vM28MAAAAcDNzMWUwMWQua2pnDAAAAGVxZDFoa2NhLnkzbgwAAAB2YTN1Y251 + ay4yMXAMAAAAYWVrYTE1Z3EucXFkDAAAAGNwdDNvNGZhLnhzdwwAAABsMXMyZ3Fhay52cWQMAAAA + anJvM2hzcDMuMmYzDAAAAGJzZ2FhdTBvLnBvawwAAABybHgxZGVoaC56eHoMAAAAdmZlNGlibmMu + YjJyDAAAAG5paTFtc3YzLnBzdQwAAAA1cWtkbnR5ci5xa3QMAAAAa2Yxa3Yxb3kuaGsyDAAAAHh1 + bmd3dWlqLnViMwwAAAB2Ymx3MndldC5rcm0MAAAAanFkZ29tNWEudmMxDAAAAHk1amtjbG4zLmxw + NQwAAABqcW1xeWVkdy5naWEMAAAAMW9qYjIwaWEudnRqDAAAAHRmaXZkdjIxLmF4MAwAAABwaWQw + aHpwcy5kdjUMAAAAd2ZnY2RxNGYueG8yDAAAAGNicDA1eG0yLnM1MAwAAABhMjAxYXBodi4wZjQM + AAAAZGwxMnl6bXIuZWJmDAAAAHgwZXZ5dHFyLmEydwwAAABnZm91NHlrMS55NXQMAAAAdzJqZHZs + MmIuZmJ3DAAAADJ4a3c0eHhyLnVpawwAAABneHFsaWdsMi5scHMMAAAAanN5dXl1emguZGhyDAAA + AGRkem5lMGpnLmV2NAwAAAB6d3pkdXBjcy5mMWMMAAAAbHZzYWFsYzEubWxqDAAAAHhheDBhZTVl + LnpjeAwAAAByZmRncm4xZS5yZHYMAAAAc201MnV4bm0uYjMwDAAAADF2cWt5NWZhLm54ZwwAAAB5 + Y3lreGVnYy4zYmwMAAAAajNqMnV5ZGIuZ3JmDAAAAGh6aHozNG1mLnB6NAwAAABhMHJzaWUxci5p + cTUMAAAAMGp1cmoyMWkuNDAzDAAAADAyM3c0YnJ4LjNzMAwAAAA0em95YjRzdy4zbXMMAAAAcGlv + MnM1MHAueGprDAAAAHBpYWpibXpyLmgzcgwAAAA1ZDMxeW5ndS54a3IMAAAAZ2dlMGMwdWEucmsw + DAAAAGpvZHIxbHVjLmk0cAwAAAAxcmNrZDN5NC5pbWoMAAAAeGxhbXhwZ3YuMWp0DAAAADJlMGsz + MWJwLm4xdAwAAAB1MW1sazF3NC52bjIMAAAAa3Y1YWhldmoudjBuDAAAAGMwdDVyMm9jLnI1cAwA + AAB4d20wdGt2bS5xbHkMAAAAdWpqcW9pM3IuamoyDAAAAG5sdHl0amd4LjN3YQwAAABoZmF4Mnhy + di5yc3YMAAAAdmdyYnlxdXYucXQ0DAAAADFqc3d4YWh3Lnk1awwAAAAza3Ftb3d3di5ia24MAAAA + ZDFocWk1dmMuY20yDAAAADFxMGRseGNpLmhjcgwAAABkemJsazRyai52ZHYMAAAAZ3loeDBwNXQu + ZGlzDAAAAGNsaWY1b3h2LnQwbgwAAABwYm52dzJ2Yy5oMDUMAAAAaWUxajNldXoudmMyDAAAAGNq + cnNjaWp3LmJzcAwAAAAxcGxtbjN3ai5kZzIMAAAAd3BxeW15cWMuZXBvDAAAADNteGpyYTBhLjVu + dAwAAABhcGxhZTVocS5ibG0MAAAAc3VjajQwcG8uMzRjDAAAAHpiY2twcDQzLjV1agwAAABhbG5s + YjRlNS5ibnkMAAAAYWl3amdzcWUuZW1mDAAAAGswbzFsbTUwLmNxYwwAAAA0cm1tbDVlYi5xZXAM + AAAAYXBpbWdvdGYueXE0DAAAAGF6b3Jwd2QwLmR3NQwAAAB5M2x0ZGkzYi5xZXMMAAAANHhvbHRm + cDAuZDV0DAAAAGhocDI1d2FpLnFxMAwAAAB4Y21obGJ6NS5paXIMAAAAbnpqd3p6MGYudmprDAAA + AHhyMTFmNHVuLjJidQwAAAB3ZGhqeHBuei5neG0MAAAAMnh5bGlsM2wuazF4DAAAAHZzMXZqd2cx + LmdqMgwAAABrMHRzbjRmaC5va2wMAAAAZDFqb2N6MmQuaHljDAAAAHF2MmpucTVzLmx5ZAwAAABx + ZHpwNWRyby4xcXcMAAAAa2ZhYmkzdHYuaXRmDAAAAHB5NG9xeWRiLjJ6MgwAAAAyNGV0dGMwdS53 + MGgMAAAAZGZkNDN6dHcubWlyDAAAAGF6Zno1eWk0Lm8zagwAAAAzdDV1d2Ruby5tdHoMAAAAb3ls + ZjF4aHguZ2RqDAAAADR5bnAwdmFuLnpidQwAAAA1enF4bXZqcC4yNTUMAAAANXFnc3F0Y2QuMmpk + DAAAADRuMm5kMGlvLm53ZAwAAAAxMm1qNWlrdy4yY3MMAAAAY3ZvZnd1dmwucXhnDAAAADBobHU1 + ZnJ1LmRjcwwAAAB4NGpoNXBkci51bzUMAAAAcWRxNHdib24ucWFyDAAAAGhvMHBhbHF4LnNocgwA + AABhMmJ0bWJ5YS5xZ2UMAAAAbGk1b3NwamouMGxsDAAAAHpldGgyMTFkLjBoYwwAAABsY2Y0NXky + bi52bjQMAAAAZXpvemI0M2suYTR6DAAAAHR1ZHVoanlyLmdnbwwAAABuZHBqaXJneC5rbHUMAAAA + MnBsbXVrdHIuYnB4DAAAAGhmeGxnb3RjLmcxYwwAAAB2cGtiMTF5Zy5pMHEMAAAAcW4ybmpvMTMu + Z21sDAAAAHJpY2o0eGs1LnBqbQwAAABqZ2RuMmN5Zi4zYW4MAAAAZDB3aGk0djEuY2wwDAAAAHAx + bGdncnVzLnB5bAwAAABqb3R3cW95ei5jZjUMAAAAM3p1cnZ3Y2oueWZnDAAAAGkxcGFkdnVuLm96 + bgwAAABhdGhucnJ6di5pdG8MAAAAc2Nmc21zZzQuc2lsDAAAAGdxZGp0MXNtLnZ4bAwAAAAzMG1i + aDNraS5rYm8MAAAAZzRoZnNoYWwuY2JpDAAAAHZlbmptanFtLnRmegwAAABhNTVpdnQ0My5zcWoM + AAAAbGY1cG14YXguYWJ6DAAAAGdtb3cwcmI0Lm13egwAAAByM3Nlemh6ai5xZzIMAAAAMGN2NHh6 + dzUuaXU1DAAAAHlzMjMzZm52LmNscAwAAABzaDJuZ2Fvdi5lY3QMAAAAbXFudG4ybXEuend2DAAA + AG8ydHFzM2NuLjBxcgwAAABycnF5ZWt6di5pcnQMAAAAcDVxMXkzdmQucDV5DAAAAGUzYzVtY29q + LmExcAwAAABtNXNxd2Nkai5vbHkMAAAAeW1uaG40bGguZ2lpDAAAAGZ0ZmJrbXlyLmoxMgwAAABo + c3ozcWdoNC53MTMMAAAAZWN0Zm9paHMuenV1DAAAADVsbHl5b2dhLmp0cgwAAAB2cmd5Mnl0eC5k + MzMMAAAANXA1YW1ja2wuam1sDAAAAGdrZXpkZmNzLjAwdQwAAAB0MzF2eHViaS55cmIMAAAAZzJ1 + MzJrenQudGllDAAAAGEzdG9nZnBjLjJ4MAwAAABrYzM1cDF2bC4wMXYMAAAAaml0MW9zNXcuanVj + DAAAAGVia3h2bXExLjJ0aQwAAABqYnd6cXVvbC54cDAMAAAAaHJrM2JwaHYuaW5qDAAAAHkweWNj + bTQxLnQxbAwAAAB3aW55a2FtZy5rMjMMAAAAaGtpamsxNTMuZTRwDAAAAGd4ZHprY3phLm1zbgwA + AAAzaWtwa2tteC5xZjIMAAAAYnRoc2dnNXQubnl4DAAAAG50M21pdGJ0LmowNQwAAABwamdpNTBu + MC41cWYMAAAAM25uZGNobWcueXZrDAAAADRhaXdwMWVhLjI1dAwAAABobXhjMmxqcC5ja3cMAAAA + d2lveTF5bmIuZ3gxDAAAAGdjdDNqbzEzLjJwMwwAAAB0cTB1MnZwbS4wdDMMAAAAb21ncW53dzEu + eTUxDAAAADIzcmVlbjI0LngzMgwAAAB6amVheWVzZy56dWsMAAAAZ2trd2x4MGYubnNvDAAAAHpz + dWl2em1jLnRmMwwAAABvMmt4bXBicS50bXEMAAAAdHBhbzNsMmgucG9zDAAAADBmbXozdHNxLndz + cQwAAAA0dDIxaDB0Yi56dDIMAAAAZXp1anB2ZXkuaWs1DAAAAHNoY2RzeW9nLmRlMwwAAABpdmt3 + ZWxteC5kaHoMAAAAc2JvNHRjeXcuNHV3DAAAAHJzbnpkbWExLmFlcwwAAABjYXd3YW5pbi5nYncM + AAAAajJvNXdkcncuZ3VrDAAAAGF5MHVodG9mLnN5ZQwAAAAwYnQ0d2l6bi4yaWwMAAAAeHFtamtv + NTUueGZwDAAAADVvdnlydHptLmQxawwAAABsY3VoaDR3cC5ldzMMAAAAYWJ6cGhhMTEuM2tkDAAA + AHZ2MWVkcnI0Lm1rcAwAAAB1aXEwajFrei5yNXcMAAAAeHFydWd2NG8uYWpkDAAAAHo0a3hibjVm + LmJjcAwAAAB5ZGVzcGpjZy5pajUMAAAAb25yMHJvZGsubGN6DAAAAGoxd2Z3eGVhLnMyNAwAAAB0 + cDRtNXR0dC53bXgMAAAAcGpkY3Bzd3MuYWoyDAAAAGtrcXgza25qLmh2ZgwAAABwdHJubm5jeC41 + ZW8MAAAAc2I1MTJ5YmouM3JjDAAAAHExenBoamN2LmNpaQwAAABwdGNka2ZxYy55M2MMAAAAZGl5 + bmJjc2gueHR1DAAAAG8yYTFiZjVoLmJlMAwAAABwMDBhc2psci5rengMAAAAM3hwYnRmYXMub2R5 + DAAAAHNwZmZ3bHhwLjRtcQwAAABjZGMxd25iay5sbWgMAAAAYjBvbm5ueTQueHkxDAAAAGJ0cXdr + NWpmLnhjYgwAAABncTR4c3dxdC54ZjIMAAAAeHNheHVzbmsua2pzDAAAAG9pYzE0azI1LnducwwA + AABsdnpvdzRpMy5jNHYMAAAAankzbWtueGUuajJ0DAAAAGxnNXI1ZnFnLmJwNAwAAAAxZWFqZ2Js + aS5tcGQMAAAAbzBydHh1YmcuMWdnDAAAAG1panliYXlrLjRtNAwAAAAxNW9wZjIydC56aW0MAAAA + MGJlaDRta2QueWVrDAAAAHVjc2pka3FxLmJpbAwAAABwbjRndzJwZC5nZXMMAAAAem92ajRqYjUu + MXVhDAAAAGMyMjN6Y3JsLmljcgwAAABiamp0NWRhNC5heDMMAAAAMnl6a3Fvc3kuZ3Z5DAAAAGJr + NGVwa2hrLnVhdQwAAABzbG40cmZxYS5jMnAMAAAAdnB4aXh1dnEuMmR0DAAAAGtpdDJndzFhLmMz + dAwAAAB3ZWowcGhmbi4xa2sMAAAAdHh1aGhxcGUuNDEwDAAAAHhzeHR3NGgyLmZjdwwAAAAzZm4y + cmR0NC5qZmMMAAAAYmdpMnN0YTEuams1DAAAAGlxbmRvamJqLnA1YgwAAAB1cG4zYnh5bS53NTAM + AAAAbmdkdDBybnIueGtzDAAAAGN2M25tMjJlLmN3MQwAAABqZmZqeWE0bC41aWoMAAAAcmJhbXB0 + NGkub3JrDAAAAHdveTFvZ3N0LmIyMAwAAABicHcyNHN6dy50am0MAAAAd3pmams0bDIuc2l0DAAA + AHYxcXRtZzFlLnV0cwwAAAByajJjcWRycC5taDQMAAAAMGU0dWRxd3cucG9qDAAAAG5lazV6c25y + LjB0MAwAAAA1am9zZG5oZi5ndmYMAAAAbXd6aXA0MWkuaTQ1DAAAAGlqZmsxc2l0LjR3eQwAAAAx + bXZ1eDFzcS55cHEMAAAAZnpiZ2JocDUueW1xDAAAAHVpMTFkenFuLnR0bAwAAABqMTBiMDNsaS54 + NGMMAAAAMXJ4MHFuaXQueW96DAAAADJzc2puMWF2LnptbAwAAAA0bWMxMzR4dy5yNGcMAAAAaXRl + aTVxa3oudXZiDAAAAHIxMWlkZW5sLjBycwwAAABzaWoxMDU1eC50eGsMAAAAamIxMTJkYnQuY3Z2 + DAAAAGIwd2tncGFuLm5xawwAAAAzNXBlamIzZC5mZDUMAAAAMm5oeHB4MmQudDNlDAAAADFkbnhr + bzRxLmRhdgwAAABhdzB5cWZwby4xbTIMAAAAb2U1MnN0cXguMnJsDAAAAHBubGhjd2t6Lmt4MwwA + AAB4bGdvNHgxdy5odXUMAAAAbzRrNHJvNW0uMmdiDAAAAGF1azJ3dHhnLmVmMAwAAAB3ZzBkYWwz + Zy50bXIMAAAAa2p4MGVyb2EucGYwDAAAADJnNHlwdHVlLjMzegwAAABoMjNpeXJlZS5qaWoMAAAA + aGR0dzNsZWouaHdyDAAAAG5zY3JjdXkyLjFkbgwAAABrY2ZudjJzcS5qMGUMAAAAMjJxMHB3Mmwu + NWZsDAAAAHhoZWd5d3Z6LncxYwwAAAByMnhzaTVtaC5wbzEMAAAAcHp2dTV5bXYudXh3DAAAADVx + ZGRrYmJiLnFnbgwAAAAzZnM0ZDBnMS5qeHcMAAAAZW9meW9ueDUudHpoDAAAAHd2djRwcW0xLmV4 + dAwAAABweXZudXJ0ZC4zZGMMAAAAaXhlNGF0czQudHEzDAAAADFycjMxNGcyLmQyeQwAAAA1YmRz + eTR1cy4yMmQMAAAAamxiMGJ0enIubGt3DAAAADR1MGhiYWQzLnhyNQwAAAB2dmdrbDJjby4yeXQM + AAAAa2c1anNqNXIubG96DAAAAGkyaDNoZ3NhLnhkMwwAAABudnVkMTNicC5iNTQMAAAAYnAza21y + d3AuNHUzDAAAAHd3MGFzc3l4Lmp6MQwAAABvaGJ1dXNwdS5ha3cMAAAAcmNpNHpxemQuNHNmDAAA + AGZ1b2pmcTQwLmZ5dAwAAABtYXBiazJpdS5jNHEMAAAAanUxdm8wbG8ubHF5DAAAAG1hMHNxZXRq + LnF4cgwAAABxbnd1dGx6YS5neXkMAAAAamtybnJkdTMucW5vDAAAAGF2NHNsZ3cyLm5qNQwAAAB4 + a2xpamN2ai4zcjEMAAAAc3cxYnZyMHIucWN3DAAAAHZydnI0amFwLnJkMwwAAAAzM2pqYXBhcS5x + bGMMAAAAczFwZ3psaHgueXRwDAAAAHBseDN3aWh0Lnp5bwwAAABwY2llMGp5Zi4ydGEMAAAAd3No + cmV0dGYubzAyDAAAAHNyZXZ3eGN4LmY0dwwAAAAyZjNleW4yeC5nc2MMAAAAZXF3MGFsZnUud2Jr + DAAAADBpdDFtZnhzLmpxMAwAAABpbHl4dXR4ei5tNXoMAAAANHJobG9pcjAuaTAzDAAAADJ2b2Nm + ZzNtLnhycwwAAABkd295eWllaC5wZWMMAAAANWIycGk0NWEuZGk1DAAAAHlkbWRrMWJwLmtlaQwA + AABqaWRjNW5paC41enEMAAAAMDJnYjJ6aXQuM3VtDAAAAHE1ZmFjM2p6LnczaQwAAABnZmswc2Jj + My5wYWsMAAAAd3Nnd3B0d2IubG8xDAAAAGRtd3FycXpvLmthdQwAAAB5ZWVrbGp3YS5oZWwMAAAA + dHpoNHN2dTIuaHp6DAAAAHBjbXhrMWZuLjRseQwAAABjMWt1M3p2bS5hMXAMAAAAa2owMDExNWUu + dXZnDAAAAGJuNHN5cWdrLjBjMgwAAAAyb21sNWJ2NS4zdGsMAAAAdzB5eHBjd3cubWwwDAAAAGQx + ZmNqYmsxLnFseAwAAAAzcmhvM3Rkdy51MnoMAAAAb2FrdGoyZGMuZjVuDAAAAHoyaTF4MTIxLmY0 + eQwAAABra2lldXZ0NC5zY3gMAAAAeHJweXVia3kub2NwDAAAADVieXR0Z29oLmRtMgwAAABkYXYz + Ympvdi5waTIMAAAAb3NoaWh4ZG8ueTFwDAAAAG0wYnJramU0LngwagwAAAB4ZHU1ZXg0cS5memUM + AAAAeGVnNDBib2QudWp3DAAAAHBnMXYzczJiLjN0egwAAABuc2FqdWY0ci52dGcMAAAAY3FrdWtz + bHIuMjJwDAAAAGZ2dmh3aWs0LjF0NAwAAABkanRudmJwdC5seHQMAAAAa3Nkdm1wMzEuenNzDAAA + AGF3cHczZGpiLjBnZAwAAABwb21kYzF0cS52amgMAAAAZHJqZm9pbnUuejQzDAAAAGYyc2NpaHI0 + LjJubQwAAABweWR1bGNpYi56YzQMAAAAMDF3d3llNGcucGZzDAAAAGNxd2ZnaG11LnYydwwAAAB5 + anphNGJrbC5ocWcMAAAAbG5qMmpyNW0udGJtDAAAAHl2MG9tcWl6LngxdAwAAABzYXNueWEyZC40 + d28MAAAAem5iejRoYmQubHozDAAAAHZ6MzFuYXNzLjM1cgwAAAAxc2I0bnlsZy5yejMMAAAAYTQz + emVkaW4uMXYyDAAAAGV5YTUwcnZmLmg1YQwAAABkMXV4YnFkMy53bjQMAAAAMHRsNTU0bWYuZnMx + DAAAAHlmendwNHlxLnp5bAwAAAAwYXNiZHJuci5yYXcMAAAAbjNqeXZrdnAuZ3doDAAAAHJja3A1 + c2ljLm1mawwAAABrZWVmcG1nYy50dGcMAAAAcXAwZXlrdDMucTRxDAAAAHowc3UwZ3c0LmxwaAwA + AABkNWZ4cXpldS5ua2kMAAAAbTVraGpscHcuZzMxDAAAAHRjMGtqeXF1LnV5ZQwAAABhaG5ncmlv + dS56bWUMAAAAaGVxa2R1bHUudHE0DAAAAHlwZHZ3MXRtLnN0dQwAAAB2ZHc0NG4yMC5lcHkMAAAA + bGN6aTQ1MnAuaWEyDAAAAGEwcmY1azRwLnQwcwwAAABhcWg0YWc0bC5uZ2MMAAAAZWNwdWE1cWku + bWd0DAAAADV3b25lcTUyLnJndwwAAAB3NW9rNWp2ZS5xbHcMAAAAMnpjcWJrZmEubGVvDAAAAGR1 + eXpvNXVlLjNuYwwAAABqNG9nMnlzdS5sd2kMAAAAZGttcWp6ZTMuYjQyDAAAAGVmZ2FvcmRxLnhy + eQwAAAA0bzNhY3B0ZC41c3EMAAAAa2J5cHJpMm8ubGJnDAAAAGtxZ253ZXJ4LnB3dwwAAAB6dXRn + enA1bi52enUMAAAAZHZycHZ5M3EuejJzDAAAAHNidjFqcGh3LmdyYwwAAAB6ZDFoaDFsdy5wZGwM + AAAAYW1veWtvZGkuNW9nDAAAAG1uMWkzYjMzLmF5YQwAAAB2cHllbGFvci52M3IMAAAAeWpibmgw + cGouMzF2DAAAADMwcndocHBsLmt1NQwAAABrdWJwcWxvYi53MXkMAAAAazNsZm9pbWEudGtmDAAA + ADNleGlsbXB2Lmp6aQwAAABsYWF1bW1nby51em0MAAAAMHIwcTV0bHkud2ZwDAAAADN4YTBxZ2x5 + LmljcgwAAAA1NHBhMnBtdy5yamkMAAAAYW9nZWs1dzEudzMzDAAAADNvZ2t3cWVvLmhpaQwAAABp + ZmxlaTFuMS5idGsMAAAAYmxkd2R0b3Uudmk0DAAAAGFiMXNhdGo0Lm1xdQwAAABkd2ViZGwwbC5t + cjIMAAAAYTRxZG94ZWsuajMxDAAAAGszMHA1c2NuLnRsMwwAAAB1MHoxMHloby5pbXcMAAAAY3lr + ampkMWMuNGd5DAAAADVqM2wxMHEwLnlmcgwAAABhdXF6cmp1aC5ld2QMAAAAemdubGx6bnUuc3Fv + DAAAAGI1ZjNmcWRpLjB5NQwAAABzeWpobG9pby41YnMMAAAAcDVucm4weHkuMmkwDAAAAHVkeGxj + dmdtLmpnagwAAAAzZmMwZXdibS5lYXUMAAAAejFkMHVvdDAudnNqDAAAADIzeTNzZnFjLmZnZAwA + AABxMnRmYjB2ay5uMmQMAAAAa2xieXcwczUuZ2ozDAAAADN0bWhjaHExLjFxdQwAAABjZXU1M2o1 + dy5rcXYMAAAAbWRjcGVld2IuNXhxDAAAAHl6MmFpd3k1Lm9scAwAAABidHZycTFiZy5jeXIMAAAA + eXlhbGJ1Y3MuYW5nDAAAAHAzeHRvcDFpLnFlZwwAAAB3ZXdrM2dmZC5uaW0MAAAAZm1qb2d4b2cu + NTU0DAAAAGVydTJsbmowLnN1dAwAAAB6bG5xa3hnYS53MHIMAAAAZXgxeDB1MXUuYnpuDAAAAHZm + eGJidWFkLm5tNQwAAABidmo1eWxwZC53ZnYMAAAAZW5rY3FzNTUudGx0DAAAAHdsZzBxcWh2LnNy + ZwwAAABvZWVrcjJ0eC51aXkMAAAAdmh0aTB3cXAudWYxDAAAADV0cXh0enYzLnk0cgwAAAB4ZXdl + bGRrdi56YXEMAAAAamJ4YzB3dWkuMWlkDAAAAG9rdXB6MnN2LmhmaAwAAAB1MWJ5eDFlbi5taXIM + AAAAaGhwejQyeHQuZ3F4DAAAADBxbDMzZXk0LmMwagwAAAA1bTVsbjVsbi4wdTIMAAAAcnN0a2Jx + dWwudWQyDAAAAG94MDQ1azFvLmdtbwwAAAB0dWRrcW0wdS50dmwMAAAAY2ZjMWlvam8uNGluDAAA + AGozcGM1c20wLm1sYwwAAABpc2Q0MGpzdC50ZmcMAAAAazM0ZHdjd2IuejNtDAAAAHZleDV1c2Rv + Lm1nYQwAAAB5ZWpnb2d4by55bnAMAAAAdjRvbjB1bGwucHlmDAAAAHB3MmUwbHpzLjVnawwAAAB2 + enEzMW94Yi50djMMAAAAeHFzMGthZ3QueTV4DAAAAGhyYmlrNGllLnNndgwAAABjZWtsNDBzaS5y + cnkMAAAAMDV0Y3h0MmwucXo1DAAAAHF4bHZnczFiLnVjbAwAAABnMndsNDBrMS5qeTIMAAAAdWEx + cnIxZGwudWVlDAAAAHFzdWdueXZmLnhycQwAAAB6bXoxd3V0dC40bzAMAAAAYTJuajNxZ3kuajR6 + DAAAADUxeW01YmhxLmVybAwAAABpMXJsMnBlYi5odmoMAAAAcWJyanptcnUubWZqDAAAAHljNWdr + Z3lsLm1wdAwAAABkZDV3dGh5aS5xeGcMAAAAa3dlZHV2cG4uZnRhDAAAAGFqZDNkdjBoLmtqYwwA + AABocGdudG5qaC56dHIMAAAAeDRmYWF5b24uemd6DAAAAGRleDR4YjVsLnJtbQwAAAA1NWZvcXJy + bC4ybXUMAAAAd2lrdXB4b2ouc2V1DAAAAHVkYWxnenR0LmMzbwwAAAA0czJ6aG15cC4waTEMAAAA + MHB4MWRpY2wucWd3DAAAAHVxYTF4bGRxLnQydgwAAAB1MXF1aHRzdi5xdXUMAAAAMnMycmJmdm8u + anZpDAAAAGQ0bDQwbGJxLjUwZgwAAAB4YTNsajR3Yi5udHYMAAAAam9jZnc1dmQubG5tDAAAAHow + YmNsa2R1LmNwawwAAAB3MGpvZ3BzMS5hNXUMAAAAMDM0bDBvaDEuNWh2DAAAADNzY3Vzd2JzLnl3 + aQwAAABidXp6MmpuMi52MzUMAAAAa2V0c2IyeHQuaXgzDAAAAG01a3RycmtsLmJmNQwAAABkeXVq + MXRydC5rdXgMAAAAYzExcG9lMDMuaHJjDAAAAGJvd2lyZDQzLmI0YgwAAAB6M2E1eDR6dS41em8M + AAAANWw1MWswdGsueGRsDAAAAGZzNXgyYWxuLmpkZwwAAABpcno1aHAxcC54dzEMAAAANDRobGZs + djQub2lpDAAAAHVzMzMyMDJyLm1tbQwAAAAwZGV2aGIwMC5lbm8MAAAAeWdva2FscHQubXpuDAAA + AGx5ZmNscmh3LnJ0NAwAAABka3hrY2l1ai4zZnAMAAAAemtkbHNwcjEuaHQyDAAAAGE0aDNvMmFy + LnBzNQwAAABxd2YwM2lxZC5oZmUMAAAAanl0cHZ2YWEudWYwDAAAAGFvdno1ZjRhLmlhMAwAAABj + djFlMnhvdS4xbngMAAAAbGFsbzVncmoueWV6DAAAAHgzanRjbzRjLjJsaAwAAABycDR0c3ZibS5o + a2kMAAAAeTB2MjM1eG4uMG5mDAAAAG56eDR2MXBpLmNlMAwAAABocWFleXd2by5zazAMAAAAcXMw + YmRudjEuNDVjDAAAAGhpM3p5cjFsLmlidgwAAAB6YzJoM28xdy5iMnUMAAAAZ2F5eXo1dDUuNWNl + DAAAAGZhZXEwdTNrLmZndQwAAABtcmZwZ3FzdS5ldm4MAAAAY2hlbTRsb3kuZnMyDAAAAGlyc2xn + b2hkLjVibgwAAAB2YWR0YXNsaC5oeGIMAAAAZnhpMmwyeXAuNGdhDAAAAGd1aHFibjExLnVyagwA + AABmcTJ5bmZiMS5tb3IMAAAAZm50aWR4dHEudDJjDAAAAHNxenZhcnQ1LnlmZgwAAABnbDEyZ2Zx + My5nZWYMAAAAcWNtYmpha2cucGc0DAAAAG4wanFyaDNjLnBtdQwAAABpNGdmdmN0Zy5sa3gMAAAA + eW1vNXlsengudmt3DAAAAHZ1bWFocGV0LmVqMAwAAABza254ZXVhby41eG0MAAAAdHF5bmFoaGcu + dW8zDAAAAG4zMm00aGVkLnRtcgwAAAAwcHVpbjRwdy54NHAMAAAAbGgxZTBjM3QuamNlDAAAADBj + eXBuZGVwLjNrdwwAAABrdWg0NGp3aC53c3IMAAAAb3UzNDFwd2sud2lxDAAAAHBobWZtZ3dkLmli + cAwAAABhc2szdXNzcy56YjUMAAAAaHgwYzFnZmIudXQzDAAAAGFxaWloMGxlLnYyawwAAABleHVl + aWVmZi5sc3gMAAAAa2pmMG9ubmIueTNiDAAAADJ5dG1vZHpwLnMyZQwAAAB3NHczZjUyai5vaGEM + AAAAajJuamJtZHEuMTRhDAAAAG1xenExcGptLnM1NAwAAAA1ZjBvb2h4My4xamsMAAAAaWJxcjUw + anAudmVnDAAAADFsM3phZ3F4Lm80cQwAAABueGN4MzBpbS4wdDAMAAAAb3ZkYmVnZGcuMWRmDAAA + ADR3MTJncHAzLmRycwwAAABxMnlkYjJtci4xNGQMAAAANWZyZHJqNG4udmduDAAAAGtua3B5MGtv + LjFucAwAAAA0aW54a3YzZC54eWgMAAAAYm1ucnBscWcuMHdxDAAAAHh5Z2U0ZDM0LjQ1eQwAAAAz + bGN1aGZpcS4yYWYMAAAAeGtpNXYxMGguZHkzDAAAADA0bWJzeWJzLnAzdQwAAAAzZXlpYjNqMi5s + Z2sMAAAAeHlxZXE1ejMubTRhDAAAAGtqcG9ud3hqLnNjYwwAAAA1a3EyYm0wby52azEMAAAAcnNj + c21uNWkudzFuDAAAAHptNWtpY3JyLjV4ZgwAAAB3dGVvdHcxci54dW0MAAAAcXZkMDIzemguYmNw + DAAAAHlranlrY3F4LnJqMAwAAABqZHQxYnV0Zy41d2UMAAAAbW53ZjJnbXUuM3hxDAAAAG1nb2Vr + dTNhLnl3ZAwAAAA0bnAwdGdoNS5ybWoMAAAANHF2c3JndnIudnBqDAAAAHhjZGN6cnl4LmZhcgwA + AAA0azEwdnV6by56d3cMAAAAb3NhZHYyeWouc2RnDAAAAGx4c2VsYXF2LjJjYwwAAAB2dGkyMDE0 + di4zY3YMAAAAaGNhMGx3cjMueGp0DAAAAGJqbnIxMHN6LnM1eQwAAABzcjVvZ25jNS5ocHMMAAAA + YTJqaHRxeWIuczVjDAAAAGtmZG92aXptLmljdwwAAABvZDMzNDVvMS41MXoMAAAAY2VzM24zdjIu + dm53DAAAAHZycDBncG1mLnkyYQwAAAB2MDFmYWJsYi41djUMAAAAanIwZnRoYWYuNWJ1DAAAAG4x + dnYxdHN1LjFpbAwAAABnZjFiaDV6by5iNWkMAAAAY25sNHhpM3Uuc2NkDAAAAHMxaGpub2t0Lmx3 + agwAAABqbmE1em0wYy5hb3gMAAAAY2phenp1bXguNXE0DAAAADVvaW81bWN4LnoxMQwAAABrbm41 + cW1ueS5kbDAMAAAAbTNkd3JxMmEuMnJ2DAAAAGJ3YmlmM20zLm94YgwAAAB0aXdpb3VsaS4yMmMM + AAAAMXU1cjFuYXoueWhjDAAAAG52MGgxNHRzLnBpeQwAAAB3cnNzY2htcy5obWEMAAAANXF4MG81 + MmIuZnlwDAAAAGJuNHJ6aXNyLjV5cwwAAAB1cmZvMmJxYi51Y3cMAAAAc3ZlZ3Rpb2UuaWNzDAAA + AGZ6aWpmcGpsLmMwagwAAABnM3lwdTJobS5qanQMAAAAd2llaG1mejIuMTJkDAAAAGQ1eXViM3Nu + LmRoagwAAAAyZnZ3eGlsdi5pd2gMAAAAdTV4NWtwMXguenJlDAAAADEyc3Q0MDVnLmJ4dQwAAABu + cWZtMWJvZS51ZG4MAAAAdGxhczJ6Z2QuZWswDAAAAG0xdmhyMWl6LnhucgwAAAB6cHpuNHczeC5u + M20MAAAAYnNqbDBudmkuaW5oDAAAADJ0amlwd2J6LjR5NQwAAABnZ3BrZGxvdy5vd2QMAAAAZHpo + M2NmYXguNWZmDAAAAGlnM2x0ZWdkLjVpNQwAAAA1eTBnZWszdS5pMm4MAAAAa2JiZGEza3MubWl0 + DAAAAG1mbzF0amV4LjR5bAwAAABlNXFpNXppYS5sMXgMAAAAeTRjNHZsM3EuMnF6DAAAAGRhZHht + MjN4Lmx4cQwAAAB6amlqZGV2cS55bmEMAAAAM290ZXByancubW93DAAAAGQ1NXA0b3BjLng1aAwA + AAB4bGE0NGYxaS5jbmIMAAAANTFiNWZndXkuaDB4DAAAAGdsb2RnM2lmLmlyMwwAAAAwZGR2anNh + ZS5vdWYMAAAAZG5qd25lcnYuZGZ4DAAAADRoYXA1c3ZsLmowMQwAAAB2a3JsbHFndS5zemcMAAAA + MTEyYnFwcWYuaWMzDAAAAGtwNHhyeWdmLm9tawwAAAB1dWx6bmFwdS4yaGQMAAAAb2V6cmgwc2ku + ajJ4DAAAAHNudnF3aGkxLml3aAwAAAB6aWZsa24zcC5sMGoMAAAANGJ5ZnhkMDUucGJxDAAAAGRs + c2Fpb2FzLmhzMwwAAAAweGZhdDNxei5vYWkVABWOfRWOfSwV0A8VABUGFQYcGAQxOTk5GAQxMDAw + FgAW0A8YBDE5OTkYBDEwMDAAAAADAAAA0A8BBAAAADEwMDAEAAAAMTAwMQQAAAAxMDAyBAAAADEw + MDMEAAAAMTAwNAQAAAAxMDA1BAAAADEwMDYEAAAAMTAwNwQAAAAxMDA4BAAAADEwMDkEAAAAMTAx + MAQAAAAxMDExBAAAADEwMTIEAAAAMTAxMwQAAAAxMDE0BAAAADEwMTUEAAAAMTAxNgQAAAAxMDE3 + BAAAADEwMTgEAAAAMTAxOQQAAAAxMDIwBAAAADEwMjEEAAAAMTAyMgQAAAAxMDIzBAAAADEwMjQE + AAAAMTAyNQQAAAAxMDI2BAAAADEwMjcEAAAAMTAyOAQAAAAxMDI5BAAAADEwMzAEAAAAMTAzMQQA + AAAxMDMyBAAAADEwMzMEAAAAMTAzNAQAAAAxMDM1BAAAADEwMzYEAAAAMTAzNwQAAAAxMDM4BAAA + ADEwMzkEAAAAMTA0MAQAAAAxMDQxBAAAADEwNDIEAAAAMTA0MwQAAAAxMDQ0BAAAADEwNDUEAAAA + MTA0NgQAAAAxMDQ3BAAAADEwNDgEAAAAMTA0OQQAAAAxMDUwBAAAADEwNTEEAAAAMTA1MgQAAAAx + MDUzBAAAADEwNTQEAAAAMTA1NQQAAAAxMDU2BAAAADEwNTcEAAAAMTA1OAQAAAAxMDU5BAAAADEw + NjAEAAAAMTA2MQQAAAAxMDYyBAAAADEwNjMEAAAAMTA2NAQAAAAxMDY1BAAAADEwNjYEAAAAMTA2 + NwQAAAAxMDY4BAAAADEwNjkEAAAAMTA3MAQAAAAxMDcxBAAAADEwNzIEAAAAMTA3MwQAAAAxMDc0 + BAAAADEwNzUEAAAAMTA3NgQAAAAxMDc3BAAAADEwNzgEAAAAMTA3OQQAAAAxMDgwBAAAADEwODEE + AAAAMTA4MgQAAAAxMDgzBAAAADEwODQEAAAAMTA4NQQAAAAxMDg2BAAAADEwODcEAAAAMTA4OAQA + AAAxMDg5BAAAADEwOTAEAAAAMTA5MQQAAAAxMDkyBAAAADEwOTMEAAAAMTA5NAQAAAAxMDk1BAAA + ADEwOTYEAAAAMTA5NwQAAAAxMDk4BAAAADEwOTkEAAAAMTEwMAQAAAAxMTAxBAAAADExMDIEAAAA + MTEwMwQAAAAxMTA0BAAAADExMDUEAAAAMTEwNgQAAAAxMTA3BAAAADExMDgEAAAAMTEwOQQAAAAx + MTEwBAAAADExMTEEAAAAMTExMgQAAAAxMTEzBAAAADExMTQEAAAAMTExNQQAAAAxMTE2BAAAADEx + MTcEAAAAMTExOAQAAAAxMTE5BAAAADExMjAEAAAAMTEyMQQAAAAxMTIyBAAAADExMjMEAAAAMTEy + NAQAAAAxMTI1BAAAADExMjYEAAAAMTEyNwQAAAAxMTI4BAAAADExMjkEAAAAMTEzMAQAAAAxMTMx + BAAAADExMzIEAAAAMTEzMwQAAAAxMTM0BAAAADExMzUEAAAAMTEzNgQAAAAxMTM3BAAAADExMzgE + AAAAMTEzOQQAAAAxMTQwBAAAADExNDEEAAAAMTE0MgQAAAAxMTQzBAAAADExNDQEAAAAMTE0NQQA + AAAxMTQ2BAAAADExNDcEAAAAMTE0OAQAAAAxMTQ5BAAAADExNTAEAAAAMTE1MQQAAAAxMTUyBAAA + ADExNTMEAAAAMTE1NAQAAAAxMTU1BAAAADExNTYEAAAAMTE1NwQAAAAxMTU4BAAAADExNTkEAAAA + MTE2MAQAAAAxMTYxBAAAADExNjIEAAAAMTE2MwQAAAAxMTY0BAAAADExNjUEAAAAMTE2NgQAAAAx + MTY3BAAAADExNjgEAAAAMTE2OQQAAAAxMTcwBAAAADExNzEEAAAAMTE3MgQAAAAxMTczBAAAADEx + NzQEAAAAMTE3NQQAAAAxMTc2BAAAADExNzcEAAAAMTE3OAQAAAAxMTc5BAAAADExODAEAAAAMTE4 + MQQAAAAxMTgyBAAAADExODMEAAAAMTE4NAQAAAAxMTg1BAAAADExODYEAAAAMTE4NwQAAAAxMTg4 + BAAAADExODkEAAAAMTE5MAQAAAAxMTkxBAAAADExOTIEAAAAMTE5MwQAAAAxMTk0BAAAADExOTUE + AAAAMTE5NgQAAAAxMTk3BAAAADExOTgEAAAAMTE5OQQAAAAxMjAwBAAAADEyMDEEAAAAMTIwMgQA + AAAxMjAzBAAAADEyMDQEAAAAMTIwNQQAAAAxMjA2BAAAADEyMDcEAAAAMTIwOAQAAAAxMjA5BAAA + ADEyMTAEAAAAMTIxMQQAAAAxMjEyBAAAADEyMTMEAAAAMTIxNAQAAAAxMjE1BAAAADEyMTYEAAAA + MTIxNwQAAAAxMjE4BAAAADEyMTkEAAAAMTIyMAQAAAAxMjIxBAAAADEyMjIEAAAAMTIyMwQAAAAx + MjI0BAAAADEyMjUEAAAAMTIyNgQAAAAxMjI3BAAAADEyMjgEAAAAMTIyOQQAAAAxMjMwBAAAADEy + MzEEAAAAMTIzMgQAAAAxMjMzBAAAADEyMzQEAAAAMTIzNQQAAAAxMjM2BAAAADEyMzcEAAAAMTIz + OAQAAAAxMjM5BAAAADEyNDAEAAAAMTI0MQQAAAAxMjQyBAAAADEyNDMEAAAAMTI0NAQAAAAxMjQ1 + BAAAADEyNDYEAAAAMTI0NwQAAAAxMjQ4BAAAADEyNDkEAAAAMTI1MAQAAAAxMjUxBAAAADEyNTIE + AAAAMTI1MwQAAAAxMjU0BAAAADEyNTUEAAAAMTI1NgQAAAAxMjU3BAAAADEyNTgEAAAAMTI1OQQA + AAAxMjYwBAAAADEyNjEEAAAAMTI2MgQAAAAxMjYzBAAAADEyNjQEAAAAMTI2NQQAAAAxMjY2BAAA + ADEyNjcEAAAAMTI2OAQAAAAxMjY5BAAAADEyNzAEAAAAMTI3MQQAAAAxMjcyBAAAADEyNzMEAAAA + MTI3NAQAAAAxMjc1BAAAADEyNzYEAAAAMTI3NwQAAAAxMjc4BAAAADEyNzkEAAAAMTI4MAQAAAAx + MjgxBAAAADEyODIEAAAAMTI4MwQAAAAxMjg0BAAAADEyODUEAAAAMTI4NgQAAAAxMjg3BAAAADEy + ODgEAAAAMTI4OQQAAAAxMjkwBAAAADEyOTEEAAAAMTI5MgQAAAAxMjkzBAAAADEyOTQEAAAAMTI5 + NQQAAAAxMjk2BAAAADEyOTcEAAAAMTI5OAQAAAAxMjk5BAAAADEzMDAEAAAAMTMwMQQAAAAxMzAy + BAAAADEzMDMEAAAAMTMwNAQAAAAxMzA1BAAAADEzMDYEAAAAMTMwNwQAAAAxMzA4BAAAADEzMDkE + AAAAMTMxMAQAAAAxMzExBAAAADEzMTIEAAAAMTMxMwQAAAAxMzE0BAAAADEzMTUEAAAAMTMxNgQA + AAAxMzE3BAAAADEzMTgEAAAAMTMxOQQAAAAxMzIwBAAAADEzMjEEAAAAMTMyMgQAAAAxMzIzBAAA + ADEzMjQEAAAAMTMyNQQAAAAxMzI2BAAAADEzMjcEAAAAMTMyOAQAAAAxMzI5BAAAADEzMzAEAAAA + MTMzMQQAAAAxMzMyBAAAADEzMzMEAAAAMTMzNAQAAAAxMzM1BAAAADEzMzYEAAAAMTMzNwQAAAAx + MzM4BAAAADEzMzkEAAAAMTM0MAQAAAAxMzQxBAAAADEzNDIEAAAAMTM0MwQAAAAxMzQ0BAAAADEz + NDUEAAAAMTM0NgQAAAAxMzQ3BAAAADEzNDgEAAAAMTM0OQQAAAAxMzUwBAAAADEzNTEEAAAAMTM1 + MgQAAAAxMzUzBAAAADEzNTQEAAAAMTM1NQQAAAAxMzU2BAAAADEzNTcEAAAAMTM1OAQAAAAxMzU5 + BAAAADEzNjAEAAAAMTM2MQQAAAAxMzYyBAAAADEzNjMEAAAAMTM2NAQAAAAxMzY1BAAAADEzNjYE + AAAAMTM2NwQAAAAxMzY4BAAAADEzNjkEAAAAMTM3MAQAAAAxMzcxBAAAADEzNzIEAAAAMTM3MwQA + AAAxMzc0BAAAADEzNzUEAAAAMTM3NgQAAAAxMzc3BAAAADEzNzgEAAAAMTM3OQQAAAAxMzgwBAAA + ADEzODEEAAAAMTM4MgQAAAAxMzgzBAAAADEzODQEAAAAMTM4NQQAAAAxMzg2BAAAADEzODcEAAAA + MTM4OAQAAAAxMzg5BAAAADEzOTAEAAAAMTM5MQQAAAAxMzkyBAAAADEzOTMEAAAAMTM5NAQAAAAx + Mzk1BAAAADEzOTYEAAAAMTM5NwQAAAAxMzk4BAAAADEzOTkEAAAAMTQwMAQAAAAxNDAxBAAAADE0 + MDIEAAAAMTQwMwQAAAAxNDA0BAAAADE0MDUEAAAAMTQwNgQAAAAxNDA3BAAAADE0MDgEAAAAMTQw + OQQAAAAxNDEwBAAAADE0MTEEAAAAMTQxMgQAAAAxNDEzBAAAADE0MTQEAAAAMTQxNQQAAAAxNDE2 + BAAAADE0MTcEAAAAMTQxOAQAAAAxNDE5BAAAADE0MjAEAAAAMTQyMQQAAAAxNDIyBAAAADE0MjME + AAAAMTQyNAQAAAAxNDI1BAAAADE0MjYEAAAAMTQyNwQAAAAxNDI4BAAAADE0MjkEAAAAMTQzMAQA + AAAxNDMxBAAAADE0MzIEAAAAMTQzMwQAAAAxNDM0BAAAADE0MzUEAAAAMTQzNgQAAAAxNDM3BAAA + ADE0MzgEAAAAMTQzOQQAAAAxNDQwBAAAADE0NDEEAAAAMTQ0MgQAAAAxNDQzBAAAADE0NDQEAAAA + MTQ0NQQAAAAxNDQ2BAAAADE0NDcEAAAAMTQ0OAQAAAAxNDQ5BAAAADE0NTAEAAAAMTQ1MQQAAAAx + NDUyBAAAADE0NTMEAAAAMTQ1NAQAAAAxNDU1BAAAADE0NTYEAAAAMTQ1NwQAAAAxNDU4BAAAADE0 + NTkEAAAAMTQ2MAQAAAAxNDYxBAAAADE0NjIEAAAAMTQ2MwQAAAAxNDY0BAAAADE0NjUEAAAAMTQ2 + NgQAAAAxNDY3BAAAADE0NjgEAAAAMTQ2OQQAAAAxNDcwBAAAADE0NzEEAAAAMTQ3MgQAAAAxNDcz + BAAAADE0NzQEAAAAMTQ3NQQAAAAxNDc2BAAAADE0NzcEAAAAMTQ3OAQAAAAxNDc5BAAAADE0ODAE + AAAAMTQ4MQQAAAAxNDgyBAAAADE0ODMEAAAAMTQ4NAQAAAAxNDg1BAAAADE0ODYEAAAAMTQ4NwQA + AAAxNDg4BAAAADE0ODkEAAAAMTQ5MAQAAAAxNDkxBAAAADE0OTIEAAAAMTQ5MwQAAAAxNDk0BAAA + ADE0OTUEAAAAMTQ5NgQAAAAxNDk3BAAAADE0OTgEAAAAMTQ5OQQAAAAxNTAwBAAAADE1MDEEAAAA + MTUwMgQAAAAxNTAzBAAAADE1MDQEAAAAMTUwNQQAAAAxNTA2BAAAADE1MDcEAAAAMTUwOAQAAAAx + NTA5BAAAADE1MTAEAAAAMTUxMQQAAAAxNTEyBAAAADE1MTMEAAAAMTUxNAQAAAAxNTE1BAAAADE1 + MTYEAAAAMTUxNwQAAAAxNTE4BAAAADE1MTkEAAAAMTUyMAQAAAAxNTIxBAAAADE1MjIEAAAAMTUy + MwQAAAAxNTI0BAAAADE1MjUEAAAAMTUyNgQAAAAxNTI3BAAAADE1MjgEAAAAMTUyOQQAAAAxNTMw + BAAAADE1MzEEAAAAMTUzMgQAAAAxNTMzBAAAADE1MzQEAAAAMTUzNQQAAAAxNTM2BAAAADE1MzcE + AAAAMTUzOAQAAAAxNTM5BAAAADE1NDAEAAAAMTU0MQQAAAAxNTQyBAAAADE1NDMEAAAAMTU0NAQA + AAAxNTQ1BAAAADE1NDYEAAAAMTU0NwQAAAAxNTQ4BAAAADE1NDkEAAAAMTU1MAQAAAAxNTUxBAAA + ADE1NTIEAAAAMTU1MwQAAAAxNTU0BAAAADE1NTUEAAAAMTU1NgQAAAAxNTU3BAAAADE1NTgEAAAA + MTU1OQQAAAAxNTYwBAAAADE1NjEEAAAAMTU2MgQAAAAxNTYzBAAAADE1NjQEAAAAMTU2NQQAAAAx + NTY2BAAAADE1NjcEAAAAMTU2OAQAAAAxNTY5BAAAADE1NzAEAAAAMTU3MQQAAAAxNTcyBAAAADE1 + NzMEAAAAMTU3NAQAAAAxNTc1BAAAADE1NzYEAAAAMTU3NwQAAAAxNTc4BAAAADE1NzkEAAAAMTU4 + MAQAAAAxNTgxBAAAADE1ODIEAAAAMTU4MwQAAAAxNTg0BAAAADE1ODUEAAAAMTU4NgQAAAAxNTg3 + BAAAADE1ODgEAAAAMTU4OQQAAAAxNTkwBAAAADE1OTEEAAAAMTU5MgQAAAAxNTkzBAAAADE1OTQE + AAAAMTU5NQQAAAAxNTk2BAAAADE1OTcEAAAAMTU5OAQAAAAxNTk5BAAAADE2MDAEAAAAMTYwMQQA + AAAxNjAyBAAAADE2MDMEAAAAMTYwNAQAAAAxNjA1BAAAADE2MDYEAAAAMTYwNwQAAAAxNjA4BAAA + ADE2MDkEAAAAMTYxMAQAAAAxNjExBAAAADE2MTIEAAAAMTYxMwQAAAAxNjE0BAAAADE2MTUEAAAA + MTYxNgQAAAAxNjE3BAAAADE2MTgEAAAAMTYxOQQAAAAxNjIwBAAAADE2MjEEAAAAMTYyMgQAAAAx + NjIzBAAAADE2MjQEAAAAMTYyNQQAAAAxNjI2BAAAADE2MjcEAAAAMTYyOAQAAAAxNjI5BAAAADE2 + MzAEAAAAMTYzMQQAAAAxNjMyBAAAADE2MzMEAAAAMTYzNAQAAAAxNjM1BAAAADE2MzYEAAAAMTYz + NwQAAAAxNjM4BAAAADE2MzkEAAAAMTY0MAQAAAAxNjQxBAAAADE2NDIEAAAAMTY0MwQAAAAxNjQ0 + BAAAADE2NDUEAAAAMTY0NgQAAAAxNjQ3BAAAADE2NDgEAAAAMTY0OQQAAAAxNjUwBAAAADE2NTEE + AAAAMTY1MgQAAAAxNjUzBAAAADE2NTQEAAAAMTY1NQQAAAAxNjU2BAAAADE2NTcEAAAAMTY1OAQA + AAAxNjU5BAAAADE2NjAEAAAAMTY2MQQAAAAxNjYyBAAAADE2NjMEAAAAMTY2NAQAAAAxNjY1BAAA + ADE2NjYEAAAAMTY2NwQAAAAxNjY4BAAAADE2NjkEAAAAMTY3MAQAAAAxNjcxBAAAADE2NzIEAAAA + MTY3MwQAAAAxNjc0BAAAADE2NzUEAAAAMTY3NgQAAAAxNjc3BAAAADE2NzgEAAAAMTY3OQQAAAAx + NjgwBAAAADE2ODEEAAAAMTY4MgQAAAAxNjgzBAAAADE2ODQEAAAAMTY4NQQAAAAxNjg2BAAAADE2 + ODcEAAAAMTY4OAQAAAAxNjg5BAAAADE2OTAEAAAAMTY5MQQAAAAxNjkyBAAAADE2OTMEAAAAMTY5 + NAQAAAAxNjk1BAAAADE2OTYEAAAAMTY5NwQAAAAxNjk4BAAAADE2OTkEAAAAMTcwMAQAAAAxNzAx + BAAAADE3MDIEAAAAMTcwMwQAAAAxNzA0BAAAADE3MDUEAAAAMTcwNgQAAAAxNzA3BAAAADE3MDgE + AAAAMTcwOQQAAAAxNzEwBAAAADE3MTEEAAAAMTcxMgQAAAAxNzEzBAAAADE3MTQEAAAAMTcxNQQA + AAAxNzE2BAAAADE3MTcEAAAAMTcxOAQAAAAxNzE5BAAAADE3MjAEAAAAMTcyMQQAAAAxNzIyBAAA + ADE3MjMEAAAAMTcyNAQAAAAxNzI1BAAAADE3MjYEAAAAMTcyNwQAAAAxNzI4BAAAADE3MjkEAAAA + MTczMAQAAAAxNzMxBAAAADE3MzIEAAAAMTczMwQAAAAxNzM0BAAAADE3MzUEAAAAMTczNgQAAAAx + NzM3BAAAADE3MzgEAAAAMTczOQQAAAAxNzQwBAAAADE3NDEEAAAAMTc0MgQAAAAxNzQzBAAAADE3 + NDQEAAAAMTc0NQQAAAAxNzQ2BAAAADE3NDcEAAAAMTc0OAQAAAAxNzQ5BAAAADE3NTAEAAAAMTc1 + MQQAAAAxNzUyBAAAADE3NTMEAAAAMTc1NAQAAAAxNzU1BAAAADE3NTYEAAAAMTc1NwQAAAAxNzU4 + BAAAADE3NTkEAAAAMTc2MAQAAAAxNzYxBAAAADE3NjIEAAAAMTc2MwQAAAAxNzY0BAAAADE3NjUE + AAAAMTc2NgQAAAAxNzY3BAAAADE3NjgEAAAAMTc2OQQAAAAxNzcwBAAAADE3NzEEAAAAMTc3MgQA + AAAxNzczBAAAADE3NzQEAAAAMTc3NQQAAAAxNzc2BAAAADE3NzcEAAAAMTc3OAQAAAAxNzc5BAAA + ADE3ODAEAAAAMTc4MQQAAAAxNzgyBAAAADE3ODMEAAAAMTc4NAQAAAAxNzg1BAAAADE3ODYEAAAA + MTc4NwQAAAAxNzg4BAAAADE3ODkEAAAAMTc5MAQAAAAxNzkxBAAAADE3OTIEAAAAMTc5MwQAAAAx + Nzk0BAAAADE3OTUEAAAAMTc5NgQAAAAxNzk3BAAAADE3OTgEAAAAMTc5OQQAAAAxODAwBAAAADE4 + MDEEAAAAMTgwMgQAAAAxODAzBAAAADE4MDQEAAAAMTgwNQQAAAAxODA2BAAAADE4MDcEAAAAMTgw + OAQAAAAxODA5BAAAADE4MTAEAAAAMTgxMQQAAAAxODEyBAAAADE4MTMEAAAAMTgxNAQAAAAxODE1 + BAAAADE4MTYEAAAAMTgxNwQAAAAxODE4BAAAADE4MTkEAAAAMTgyMAQAAAAxODIxBAAAADE4MjIE + AAAAMTgyMwQAAAAxODI0BAAAADE4MjUEAAAAMTgyNgQAAAAxODI3BAAAADE4MjgEAAAAMTgyOQQA + AAAxODMwBAAAADE4MzEEAAAAMTgzMgQAAAAxODMzBAAAADE4MzQEAAAAMTgzNQQAAAAxODM2BAAA + ADE4MzcEAAAAMTgzOAQAAAAxODM5BAAAADE4NDAEAAAAMTg0MQQAAAAxODQyBAAAADE4NDMEAAAA + MTg0NAQAAAAxODQ1BAAAADE4NDYEAAAAMTg0NwQAAAAxODQ4BAAAADE4NDkEAAAAMTg1MAQAAAAx + ODUxBAAAADE4NTIEAAAAMTg1MwQAAAAxODU0BAAAADE4NTUEAAAAMTg1NgQAAAAxODU3BAAAADE4 + NTgEAAAAMTg1OQQAAAAxODYwBAAAADE4NjEEAAAAMTg2MgQAAAAxODYzBAAAADE4NjQEAAAAMTg2 + NQQAAAAxODY2BAAAADE4NjcEAAAAMTg2OAQAAAAxODY5BAAAADE4NzAEAAAAMTg3MQQAAAAxODcy + BAAAADE4NzMEAAAAMTg3NAQAAAAxODc1BAAAADE4NzYEAAAAMTg3NwQAAAAxODc4BAAAADE4NzkE + AAAAMTg4MAQAAAAxODgxBAAAADE4ODIEAAAAMTg4MwQAAAAxODg0BAAAADE4ODUEAAAAMTg4NgQA + AAAxODg3BAAAADE4ODgEAAAAMTg4OQQAAAAxODkwBAAAADE4OTEEAAAAMTg5MgQAAAAxODkzBAAA + ADE4OTQEAAAAMTg5NQQAAAAxODk2BAAAADE4OTcEAAAAMTg5OAQAAAAxODk5BAAAADE5MDAEAAAA + MTkwMQQAAAAxOTAyBAAAADE5MDMEAAAAMTkwNAQAAAAxOTA1BAAAADE5MDYEAAAAMTkwNwQAAAAx + OTA4BAAAADE5MDkEAAAAMTkxMAQAAAAxOTExBAAAADE5MTIEAAAAMTkxMwQAAAAxOTE0BAAAADE5 + MTUEAAAAMTkxNgQAAAAxOTE3BAAAADE5MTgEAAAAMTkxOQQAAAAxOTIwBAAAADE5MjEEAAAAMTky + MgQAAAAxOTIzBAAAADE5MjQEAAAAMTkyNQQAAAAxOTI2BAAAADE5MjcEAAAAMTkyOAQAAAAxOTI5 + BAAAADE5MzAEAAAAMTkzMQQAAAAxOTMyBAAAADE5MzMEAAAAMTkzNAQAAAAxOTM1BAAAADE5MzYE + AAAAMTkzNwQAAAAxOTM4BAAAADE5MzkEAAAAMTk0MAQAAAAxOTQxBAAAADE5NDIEAAAAMTk0MwQA + AAAxOTQ0BAAAADE5NDUEAAAAMTk0NgQAAAAxOTQ3BAAAADE5NDgEAAAAMTk0OQQAAAAxOTUwBAAA + ADE5NTEEAAAAMTk1MgQAAAAxOTUzBAAAADE5NTQEAAAAMTk1NQQAAAAxOTU2BAAAADE5NTcEAAAA + MTk1OAQAAAAxOTU5BAAAADE5NjAEAAAAMTk2MQQAAAAxOTYyBAAAADE5NjMEAAAAMTk2NAQAAAAx + OTY1BAAAADE5NjYEAAAAMTk2NwQAAAAxOTY4BAAAADE5NjkEAAAAMTk3MAQAAAAxOTcxBAAAADE5 + NzIEAAAAMTk3MwQAAAAxOTc0BAAAADE5NzUEAAAAMTk3NgQAAAAxOTc3BAAAADE5NzgEAAAAMTk3 + OQQAAAAxOTgwBAAAADE5ODEEAAAAMTk4MgQAAAAxOTgzBAAAADE5ODQEAAAAMTk4NQQAAAAxOTg2 + BAAAADE5ODcEAAAAMTk4OAQAAAAxOTg5BAAAADE5OTAEAAAAMTk5MQQAAAAxOTkyBAAAADE5OTME + AAAAMTk5NAQAAAAxOTk1BAAAADE5OTYEAAAAMTk5NwQAAAAxOTk4BAAAADE5OTkVABWO+gEVjvoB + LBXQDxUAFQYVBhwYDHp6bGd5eGE1LjR5YRgMMDExY3FhbjQueXpzFgAW0A8YDHp6bGd5eGE1LjR5 + YRgMMDExY3FhbjQueXpzAAAAAwAAANAPAQwAAAB2MWtnNWhtci5maGoMAAAAZG5zdGNwbHYuZWRr + DAAAAG1ta3lucHR0Lmw0awwAAAB5c3E1d2NrZy5idG8MAAAAcHJlZXpmdGwubXEzDAAAAGdmdXg0 + MWF2LmNvegwAAABnaHpnMmNqZS4yaDEMAAAAM2R0dngwMWkuZ2tyDAAAAGV1emQxYjQxLmJxMgwA + AAA0YXRkMnpuby5nNDEMAAAAeWtkc240dWkuYjNlDAAAAHRud2tmaXNkLnFqNQwAAAB2ZmtpbGsy + dS4xYjQMAAAAdWN0MnIzdG0ubjEwDAAAAGRjdHdocWNvLnZnegwAAABhc2hvYXZvMS5vamYMAAAA + dWdzcWJicHMuNXQyDAAAADBwcHlyNGVoLmhtcQwAAABsNWRheHZ1cy5wcDIMAAAAa3d3MTFwMmEu + ZHhvDAAAAHNobWx6YzNpLnpkMAwAAABraTJva2FteC5hc2QMAAAAaTFiYnUyd2IuZGpqDAAAADJ5 + dnZ1ZnRsLm1lcQwAAABmZzB4Y2xoay5odGgMAAAAY2l6cHh1c20ubDQzDAAAAGFtcnRlMGxhLjJ0 + cwwAAAA1ZDUzZWY1NC5tMHkMAAAAcmxpczR4NG4ubXp6DAAAAHp5aGRjdnZsLnhieAwAAAB4ZDR3 + MGZxZi5sMHMMAAAAdnFzeWFoNDAuYmFuDAAAAGtvYW1raWJxLmtvcgwAAABzNHBtdTI0dC5ia3AM + AAAAMzE1ZzI0aGsucTQ0DAAAAHN3aDVxZmVnLnduagwAAAB3Z2Z4d3dmNC5jMmsMAAAAMWpwMmls + d3IubDVzDAAAAGNvcW90NHU1LmhncQwAAABsaXgzZ2dmaS5leG0MAAAAcnhlbnNva3UuamlmDAAA + AGUya2d5aWQ0LmYwYwwAAABkZWs1NHB4bC5pYmoMAAAAdTRpMDNiYXAubjJ4DAAAADVqd3Yyc2M1 + LjJydAwAAAB1ZzR6NGxtcC4xMzAMAAAAMW5lMXVjbmgua2gzDAAAADQzb3N5cjVuLmpzaQwAAAB1 + NWpicGFmMi5mcjAMAAAAbWMxY2FvYmcuMW9xDAAAAGJlemVteHZyLmlhZwwAAABleHJ0Z2xhMS4x + dTEMAAAAb21waWxlYWwucjFnDAAAAGg0bXoxdmFiLmJlbgwAAAByZ3BkYWx2dy5kaXgMAAAANW1p + b2NiNWsuaHR0DAAAAGt0c25mdnBlLnEwZQwAAABjNDFoYWV5Yi5zdW4MAAAAaHVobGZpdTMubG5q + DAAAADBlb2F2Y3BvLmxwNQwAAABrajQ1ZXpyeC5tZTIMAAAAYXNtejVvNW0ueXVtDAAAAHN5ZGJq + cG9uLmRmeQwAAAB5dHc1Y3FtaS5iZGMMAAAAcTN6M3JlamQuMHRmDAAAAG8zdHB2cmJkLmtncAwA + AABpbWp1MWcxay40bWQMAAAAaGVwdzF0ankuZGRyDAAAADJic2NpYWd6LmF1ZAwAAABwdWN5bWFl + di5xajAMAAAAb29ncmtlY3kuMGdiDAAAAHZnMXBjNHd6LmFoeAwAAAB3ZHRkcXRnYy5oNXAMAAAA + Y2FieHdwbzAub3pxDAAAADIxcWFjYnRwLmlpdgwAAABqMHltdWJpYS40amwMAAAAMmUzeWliNXku + b294DAAAAGIxMjF0YnlvLjFtZgwAAAAyZWVpeXRteC5jMmEMAAAAaXdramt2djQudWcyDAAAAGh4 + aGgwb3gwLmh4ZwwAAABkcWFpanYyZi5mYTQMAAAAejJ2YjNqbWEudjUzDAAAAHBzNHZqdHhwLnNj + NAwAAAAzMHlyMW1kZS5lZGMMAAAAeGlhZ2UzazQuZTRlDAAAADRoNG93YWFiLmh5cAwAAABiejR0 + M2xkYy5ybnIMAAAANHFhZ2cwY3ouMG12DAAAAHB4aWxodWtxLm9jcAwAAAB6c2hjMXAxeC5yY2wM + AAAAMWphMXlzNW0uYXFnDAAAAHQ1ZGh0c2txLnVpdgwAAAB4cm5mZGJveS5mdmEMAAAAdnp6MDJw + YWQuMHdrDAAAAHB2eHNpNXRwLnFzdAwAAAB5MnZhdG1iMS5vZTUMAAAAYW1taWp6bjAuYXMxDAAA + AGt3dnVlMG0yLm01cQwAAABiNDVyYzF2di5xZjQMAAAAdWJwMDBxYWYuNDNzDAAAAHdybXpvaTFu + Lm1yZAwAAAB6NDBpY3hmMS54YTQMAAAAY241eXkxaDUuYWh0DAAAAGRkbjNmaXF0LmR6YwwAAABv + dXJ4ZTJrcS5mam4MAAAANXgzMXpwM2MuZ2pqDAAAAGdtMW5oZXBzLmJzYgwAAABmbWZ4cnRsZS5j + MXQMAAAAenZwYW1hc3kuemRwDAAAAHV0empqb2VmLnBscgwAAAB2Z3l3bmt2Zi5hNHMMAAAAY2lu + eG0zYXouYXkyDAAAAGp6YnF5czBtLmdzZwwAAAAxeGltM2lwdS4xYmsMAAAAYTRzZDU0aW0ueWIz + DAAAAGV6YXQwZ2dsLnVqMgwAAAB2cWxmM25sMy5ieGUMAAAAYXFjNXUzeHouNW5pDAAAAGlxYWYw + eHZuLmQ1bwwAAAB3YzJyM3pmdi5zY3AMAAAAbHJxbHp1bmIuMW90DAAAADFvY2FnM2Y1LnBxbQwA + AAB6YmIxaDJ5Yy5kZGoMAAAAbWFreDB4c2oud2NpDAAAADNyZ3RmamdsLmg0cAwAAAB1M2hyMGFn + NC5ndHQMAAAAcjRqZmlxdTIuZmJpDAAAAGllaXoyNTBqLmswdgwAAAB1cjR4YjFtcC56dmUMAAAA + MjVuZ3FqeWgueWp2DAAAAGQwZDRyYnJmLjVnagwAAAAxb2ZjaGZkNC53NGwMAAAAa25sYXRpYWcu + eTV2DAAAAGtyb3dza2xkLm5sYgwAAABlZWl1Mnhnbi5ldWQMAAAAbGVyeWt1dWUuYnl4DAAAAG9u + eDEwa2dnLnVnawwAAAB3Z2NlYjIwYS5jcm4MAAAAb3NycHMyczQucG95DAAAAHkyc2FtZTR4LmZx + cwwAAABkc2kydGRsMi5rdHUMAAAAc3FyMHAyNGcuMTJrDAAAAG1zcmt0ejNoLnJuaAwAAAB1YjR1 + dmNpbC5ocjAMAAAANTFxb2tiNGEuc29vDAAAAHVxcDR2dWhsLnZleAwAAAB4aHExcTVrbC5ydDEM + AAAAZ3h3aDNzdnQubjFvDAAAAGYza20ycXNwLmdtdgwAAAAxaHJjcHI1ZC5hc24MAAAAMXp5MzB6 + M2EubXpsDAAAAGhvc2R5b2ozLnJnNAwAAAA1anRoam14ZC5kZXYMAAAAdmhreTVrMGkuYm9pDAAA + AG5tcGVsdjEzLjIxNQwAAAA0ZXp5czFmZy5mcnQMAAAAYWNlYmtlMTUuMzJlDAAAAHdtbXBobjNw + LjNidQwAAABidHNmZXJpcS5naXIMAAAAeWQwbzJ1emsubHpwDAAAAGwzbmdsYXQyLjIzeAwAAABy + NGdob3hxYi5veHgMAAAAdnp2dG9vMXEucXJzDAAAADRoa3djbmRnLmVvYwwAAAB6MDFjMm55ei55 + ZHoMAAAAem1vcjExeDQucTAyDAAAAGI1eHZ0YjMzLjFxbAwAAABxcjNjbXluNS5vcGUMAAAAbTVj + dmJoMnouYjF2DAAAAGJrMWZybG4zLmp4cQwAAAB5c3pleWdkbS5zZjIMAAAAbWJ3Z2xiNTQuZWRi + DAAAAHFjMWJseTNuLjMxZQwAAABhamMwaWtycy56dXYMAAAAc2VjYm5yankuMXdpDAAAADUydWFs + aGFwLml5MwwAAAA0b2pzcXlyay4wcmwMAAAAeWxrNG9udncuc2JwDAAAAGNjNTJhdmh1LnAxZQwA + AABvdmF1ZmVoZi50bHIMAAAAdzJmbGZtYWYuc2RsDAAAAHZhY2tvaWN0LnZ3YgwAAAB5dHRhaHdi + eS4waGUMAAAAcHpiY3I1ZGkud3U1DAAAAGluajBueGpiLmkxdAwAAABleGZoeWIzby4ya3oMAAAA + NTFuY295dDQubGxjDAAAAHFkamUzbmZiLjFyMAwAAABkeHl5NTRtei4wcDAMAAAAZm9iZXcwbHgu + bnViDAAAAHB2ZDJjamdhLmhnYQwAAAAwcHNhMWJmNC5qejAMAAAAaXVsM2d6eGouem9tDAAAAHY0 + MG5rZXByLmlycgwAAAB0MWIxcmQwZi56YmoMAAAAemJ2NWJncTAuMjB2DAAAAGhkb3UwbTBpLnlv + dwwAAAAzZTFzaDQxay5pbWwMAAAAZW12b3pjeG4ubGtsDAAAAGwycHp1MXBrLnBnbAwAAABjMWhv + cXJtZi5na3EMAAAAeG1ma3R4M3Iua3g0DAAAAHB5NXR2eWFtLmRsegwAAABkZ2l1ZXlmbS5taXMM + AAAAZG5wZzN0ZGMueGhjDAAAAHV6d256Y3FhLm94egwAAAB0YXoxdm5kci5uNHAMAAAAdGFwdnB0 + aHIueXdzDAAAAGRwMXk1anZ0Lmc1dQwAAAA0M2V1dnFkZC51emkMAAAAMDIwbG0xMGgud3dlDAAA + AGNkM2dtbWVpLmwxZgwAAAB4ZW1tM2VkcS54enQMAAAANHV3M3d4dHUubnAxDAAAADNjbGtrdmQy + LnJsbgwAAAB1NHRpajN4ZS5vY20MAAAANWdicTFxaHouM3dyDAAAAGpvZXJnd3cyLm5mMgwAAAB2 + MnVqbXd0bi5pZngMAAAAc3lkb3hrZncuZ253DAAAAGJ1dzE0bGQ1LmdmcwwAAAB3M2FrbGVxdS52 + Z2kMAAAAY2NwaDF3ZDIueGR5DAAAADBnMG9vcW4zLnZwaQwAAABjcmFmMGYwbC5icWQMAAAAcHBl + ZnVobjAuM2hmDAAAAGljemt4NHozLmhjaAwAAABncTRhY25laC5pYW8MAAAAbWQ1cXRwbXcub3pt + DAAAAG5jY3ZtZTMwLndvagwAAABpbWVyYW5yaC54aTUMAAAAb2J4ZXZsdXIuZjBlDAAAADVoZ3p1 + c3ZrLmVlYgwAAABzazA0Y215bC5keXoMAAAANHh1cXZ2M3ouaWMxDAAAAHZveHV1b2ZxLm1jcQwA + AAB0djUzc21idy5hbTAMAAAAcHU0azJ2aXYuMHJyDAAAAGtubHNvaW1uLnZsdgwAAABlMGQ0NGo0 + ei53NG4MAAAAcDBoaWZ3dDEudjVtDAAAAHJoY2F6c3FzLmx2aAwAAABheWFtY2RicS5zMHkMAAAA + Ynh1Z3FsbDEubTFlDAAAADB4Y3V4b2ZtLm94dgwAAAB2cXZ2bXdjcS5sMzEMAAAAaG5mbzRwd2Iu + cjBiDAAAAHV1eDNmaHBzLmw1MQwAAABpNWpoeWJncy5tdGkMAAAAb3pmNXIza2Eudnh2DAAAAGR6 + dDR4bmNwLmJldQwAAABqNGpnNDRlYS5jM3IMAAAAYmlvajVxYXguNGNlDAAAAHVtdDAwcXZyLjJm + bwwAAABhZXprenJwby5mZ3cMAAAAZG40ZmJxNHcuajF4DAAAAGRkeXp2bnFkLmNtcgwAAABhbXIy + ZWx1Mi5yaGcMAAAAZmY0cTJiemkuc20xDAAAADU0aXZ2ancwLnFiZQwAAAAwMWVid2p0bi53eXkM + AAAAaGJ1bWRqZGkuYmZ5DAAAAGxsdmNlMTBhLnF0ZQwAAAAxeXF6MXN1Yi4wb2YMAAAAa3RsbXh4 + ZTUucHJjDAAAAGM0NGMzemd4Lmd4dAwAAABwd3h2MnJibC4zY3gMAAAAMjFuNWl1bm4ubzFiDAAA + AHNpM2JnYmUxLm5hdAwAAAB3cXRieWkzeS5td2IMAAAAcDBrd2NkcGkucHphDAAAAG53dnRjcWIw + LmMwYwwAAAA1eTRmbnIzZi5wZHgMAAAAeWlxdHdlenkuZjExDAAAAHJwbnZuenpyLm40cgwAAABu + a3ExdXExZi53MmsMAAAAZ3cxbHBjbmYueTN2DAAAADBwbHVhbDJ1LmpkMgwAAAB1a2RsMzAwZC5z + b3AMAAAAd2NubG92aHcuMWxiDAAAAGNwZXVjcjN6LnZ6egwAAABic2tqemJnYy41ajQMAAAANDNk + eml5ZHYubXZpDAAAAHd5anJ5d3FrLmtycgwAAABieTF0NHVucC54YmsMAAAAaWloZWVmbWYudnFt + DAAAADJrdWZ6eWtxLmE1MgwAAABkaG01eDFkMi50dmQMAAAAbmc0NGVoNDMuZzV4DAAAAGp6cGZt + M21qLnJreAwAAABwcXR1bHdwMS5iYXUMAAAAYmlwaWlvemcucjBpDAAAAGxyYzJnNHNrLnJudwwA + AAA0NWhnZHhxZS5scHEMAAAAd3B4emZoZWQubDUxDAAAAHg0MTJuand6LmJ4eQwAAABwdGZieWxj + Yy5tYnEMAAAAeXA0eHNuZ3guZXlvDAAAAG16NTJ5cXAwLnBkZQwAAAByajJyZGhhei5za3QMAAAA + Y3pobjJzZ3Iub2J6DAAAAHFveGVweWE0LnR4MgwAAAB6bDRoZXBuby55eTIMAAAAYWh1cHFwMHou + d2NlDAAAAHltMzBuajF3LnAydAwAAAAzcDBubzNvYy5xNG4MAAAAMGZncXVya3MuY2RhDAAAAHh3 + MGFxY3VyLnEycAwAAAB6a2ZzZnRveC4xYWUMAAAAbHZoZ3gyZ2wuZ2wzDAAAAHlmcnRtamViLnhz + cwwAAABoYTBqb25jeS5hNWoMAAAAc3VqNXl1NG0uMmV0DAAAAHZqb3NnMDI0LmswdwwAAABxcGx0 + cXd1cS5vbWYMAAAANGZhcjBnd3ouemJsDAAAAGNibGVrY2Z6LmxkbQwAAABlMHF1dm5qYi5rbGYM + AAAAZnp3NW12cjQuNHNqDAAAADJpbGN0MzVtLnpucQwAAABxb2FrZnk0dy4xeWMMAAAAZ3N2bDA1 + bnIuZGVvDAAAADRud2kzb3l2LnVybgwAAABheDMyZ2N1by5sanEMAAAANG5xMnBvY2YuM2RwDAAA + AHlncHNodmJ0LjNmcAwAAABrZjEwZTVqdy5iYjIMAAAAMHoxbTFjNGoud3l0DAAAAG9waWt3aWpo + LnM0egwAAABkZmhydTQway52eXEMAAAAem1zemMxcWIuZG51DAAAAGF5NW5rMTN4LnJmdwwAAABl + bDFjajBtaC5kZGYMAAAAbmNrdGh4bDIua2ZoDAAAAGtuZnoxMTVlLmU1awwAAABoZGt3NWdnai5h + Zm0MAAAAczN4c2FtbHcuZG55DAAAAHUwZDFxbWRlLm9ubgwAAAAyMnlodDV0cy40eHEMAAAAbXpt + MGl2ZXkudTEzDAAAAGExNG8yd3p2LmowbAwAAABwZzBuMzI0ZC5mejIMAAAAdGkxM2M1MW8uNXps + DAAAAHphYnYxaTVjLmJiegwAAAB0ZWh3cHJldi55bjIMAAAAenpsZ3l4YTUuNHlhDAAAADVjNTI1 + MGNmLmZzeQwAAAB6dGFzcms1dC5peWoMAAAAdDBuNW5uZXAudnNhDAAAAG55dmVvc3gwLndvcAwA + AABsZ3hjZHRoMC5hbWEMAAAAdGIwb3FwM2wuZXZ3DAAAAGRlY2J1azEzLmxwZQwAAABzZnFjNXJ3 + eS5uZGYMAAAAMnQ1M2p5NWEua2lqDAAAAG12Z2hqdW8xLmdpagwAAAB4MWZodmlrby5wcnoMAAAA + czM1eWVmZ3AuYXVqDAAAAG1vZ2FhYm15Lm9sbQwAAABzZGo0M2g1bS5iZXEMAAAAdHZyaDRuM2wu + a3hxDAAAAGNka3oycnd0LnUxcAwAAAB4enkwaHZvci5nMHEMAAAAbWpscWlrc2wuYml1DAAAAHgz + cWZxNTFxLnh3ZQwAAAAwemZwYWVlYy5rNTIMAAAAY2wzM2xwZWoudGc1DAAAADUxcTRxa2duLmw1 + dAwAAABiNHZucjNqby41d3gMAAAAMXVmb2YxZ3UuYjJoDAAAAG1rbTJ0a2h0LnhheQwAAAA0bWJx + bjVyNC52MGsMAAAAcXZxb2NjeXkuZnlnDAAAADRqbHgwamkxLndqcAwAAABmenlyNXlmbS5wZG8M + AAAAbTVyeXI0ZG4ubGZoDAAAAGxsMXFidHF4LnRidwwAAABtbDQ0em90NC5yaG0MAAAAbjNqcDV2 + Zm8ubjV1DAAAAHh4eW91cm8wLnA0cAwAAABkY2s1MXRwdi5jcWwMAAAAcmRvMmxxYnEueXFsDAAA + AGx2cnEzb2ZjLml2dwwAAABmaHY0MDJyaS55ZWIMAAAAM2h2ZXYxbWsucXdkDAAAAGp2bnRvZWY1 + LnJueQwAAABieXVzeW1kdS5wc2gMAAAAb2lib2x2cHAucGplDAAAAGZ5NGFnMGgzLmR6ZAwAAABx + ZmlleHpsZy5mMngMAAAAd3V3Yno1anYucHZ6DAAAAG9qNHJoNXN4LmgwawwAAAA0Mm52c2k1dS4y + ZG8MAAAAMnZ4dTVsZGMua295DAAAAHdsbGxxdXptLmR4NQwAAAB3M3ZweGxyYy4yM3kMAAAAaGFp + Y2gza2YucmVnDAAAAHdvZGQ0b2V2LndpYgwAAAByMGFvc3FvaS5ocmwMAAAAc3k0YnhsdnIuYm14 + DAAAAHJuMXU1MXd1LmhsZQwAAABqazVudm90ei5iM2QMAAAAb3BvY3V3ZHUubjVwDAAAAGt2MHB2 + dWl3LnZidQwAAABoMjQwNXptZC5kNG0MAAAAdXl0aXZzZW8udjR3DAAAAHdiZ29md3phLmZxZAwA + AABzcWRpcHl1dS5qcXYMAAAANG8wYmp2YWcuNTM1DAAAAGdhNHBkc3BhLjUzYgwAAABiaXBiaTVj + di5ham4MAAAAeHhyaWEwaGMudHZmDAAAAHp2ZXVvZWN6LjRrZgwAAAB5eWFseW50Mi50bWEMAAAA + ZDIxbG41NTEubjBxDAAAAGp3Z29mbGYzLnlwMAwAAAA0bWpwc3diYy5udGcMAAAAMnMya3Bjc2Mu + cW16DAAAAGY0cjJmdnJ5Lnp1awwAAAA0eWhtcTVheS5uczEMAAAAd3hmMjVlZHAuaDBzDAAAAGUy + d3htMXF3Lm96egwAAAAyc2M0NXB3aS4xZXcMAAAAanEzbWp6NXcuYTRsDAAAADJncGFua2d4Lnlx + egwAAABreHNtZWNycS5oeGkMAAAAMnhlMmlzM28uMXUyDAAAADRpd3Brb3MzLnp4ZgwAAAAwbmI1 + Z2Nwbi5paWMMAAAAcm5tbDUwMDEuMWN5DAAAAGplcWZoZjBuLnltegwAAABzem9yc2tlcS54cjQM + AAAAbjRiMjB4MmUud2ZvDAAAAG11ZHlyYXUyLmtnMgwAAABoMTRhZG51ci5uc2cMAAAAZDJnNWdk + MjAucjR1DAAAADRneGNodXMxLjFvdAwAAABva2t0dnFmdC56cmsMAAAAbDBtbXp2bTMuZGd5DAAA + AGFtY3hma2J6LnZobAwAAABzMjNrYjNqYS5zbGcMAAAAZ3h4b20za3MueG5oDAAAAHV6bHdlbGo0 + LjRyagwAAAAycHRjMDJzay5jbGYMAAAANGtiZmMxemQuYXcxDAAAADBha2Roam5rLmF3bAwAAABs + bHNiM3Z3eS5lM3gMAAAAYmp3eHp5YzQueHNwDAAAAGdpM3lsdnJoLnRxcQwAAAAyc2l2YW5iaS5k + aHEMAAAAajIxZ2M0ZTMuM2NsDAAAAGJnMjRpZHh6Lm4yZQwAAAB2b3pnZXJmai5yd3YMAAAAY2py + MXcxdGouazRkDAAAAGdoam5seGVjLjFuegwAAAB2dnllcGFjNC5qNGIMAAAAYWF1dHN2YnYucWRu + DAAAAHF3ZTAwYzJiLjExcQwAAABjYXh2d3AzZy55bjIMAAAAbXJpYzF1YWQuMHJsDAAAAGp0YjVz + ZXF1LmF4MgwAAABzY3pyZ2xlaS5oZnUMAAAAamdseDB3aHcuZW1lDAAAAGR4cG4xa210LmtkbgwA + AABteHplZG1qaS5qcnIMAAAAa3FiajRjNWouYXp3DAAAADR0MnJhejFvLnlqaQwAAAB1a2Z3aTNl + Yy5nemQMAAAAemVjbmx6b2QubDM1DAAAAGVia2JhZDFyLnlocQwAAAB5am1xaXlycC5ld2sMAAAA + Z3ozaWVnNHAuaWQwDAAAADBlbmFvZXQ1LnVvagwAAAB2cGUzZTJwaS5qZHAMAAAANXVsdGpweWQu + c3RvDAAAAHQybmtiNHJlLmkwZwwAAAAxaHI0M2R0di4wc3EMAAAAMXdhZ2pyencueXRxDAAAAHlt + Y3VieWdrLnduZwwAAABibG1tMmdtei52Y2gMAAAAbXM0cm1lZjEuaGxlDAAAAHN1eG9vanFmLmxu + dQwAAABnamFpb2JiMC55cmkMAAAAa3lkbWU1c28ueHRiDAAAAHEydTN1cmh5Lm5zeQwAAAAxeTJm + bHp1dC53M2IMAAAAZnJwbHlwc24ubWFpDAAAADJsbm1hdzRwLnJnegwAAABzeXRkd2J2aS5jd3oM + AAAAeWc1ZTJmemYuZjFoDAAAAGZpYjVnaGZrLndlMAwAAABjMmJ1MTF6eC5jY2UMAAAAYnc1aW1p + YjUuMDJ3DAAAAHRhZTBmb2x5LmxlcAwAAABnamExM254eS41aGUMAAAAengzbWt0bzQuNXV5DAAA + AGVrend6bTMyLnNicwwAAABnZzB6MXh2Yi5mNG0MAAAAczIwNDVkaDQudGJqDAAAADUwcmdoYmhi + LnBzZgwAAAB5ajAxcHAzdS4za2oMAAAAcjFzaHdtYm8uYm9rDAAAADQxYWQxdWFlLmRhdQwAAABk + ZmJ2MDJ1ei4xZTUMAAAAenQyMGs1ZGwubzFqDAAAAGV3Y2Npemp6LnZ6YgwAAABzZDF5cTU1Yy41 + M2cMAAAAaDBpaGZmd2MuY3BvDAAAAHV1NDBraDBkLjR5ZwwAAABkam4yZXczMC5lbmIMAAAAc3Uw + emdtaG0uaHkzDAAAADRhaXRtd2psLnpyYgwAAABzYng1Zmlwbi40cHQMAAAAY2NjeGlicG0ud2Ji + DAAAADBieHVxeDJuLmEzMAwAAAB4ZWxqcGx5dC55dWUMAAAAcXQ0bTJnYXoueXlmDAAAADN4aWJp + Y3R4LmJ1ZAwAAABnb3BhMWY0cC5icnAMAAAAcG9oc2pmMDIuaGUyDAAAAGFmYm1peXU0Lnl6bwwA + AAAwbXJsZWdreC5wa2gMAAAAeW5sempseGwubmR2DAAAAGZ0eWNtMTJrLmJkdAwAAABzMWVpa3hv + dy5qZTIMAAAAaG9sYjNjZmkuYW9iDAAAAHp4dDNhc3IxLm40agwAAAB0ZnMxZmxrMy51ZGwMAAAA + ZTJ6ZWZkYzQuNHRvDAAAAHFhdXI1cTFvLmthdQwAAABoNHRjMjVxMi5yNWoMAAAAajBibmhleG8u + YWp0DAAAAHF0cm1rNXV0LjRpMwwAAABrZ2NuZnI0eC5oaGkMAAAAMHRweTNjdnQuaDNiDAAAAHlr + MHBicGkzLmxycgwAAABkand1ZGkyaS5rdW8MAAAAaDRxamo1aWQuNGZtDAAAAGxyNDB0amIwLm8y + cwwAAAB5emxjdTB5bi5pd2UMAAAAMHZlcDViZDUuZ2ZrDAAAAHhtenhibnJnLmY1egwAAAB6bnFx + bWp3dy52aHMMAAAAYmhycmx4YnUucHkwDAAAAGJvcHplMTNvLmxhagwAAABzNGJ4ejBndy51bTMM + AAAAMmgyb3J6ZHAudnUzDAAAAGpkZGs1bWZ1Lm9hawwAAABhdHExanlseC55cXkMAAAAMGV5Y3hm + d2wuaWY1DAAAADBnMmpqbXZnLnUyaQwAAABlMGJtdXJ5bi5sZnMMAAAAaWRmazE0aTUueG5tDAAA + AGVzMndic3RzLmxmdgwAAABycXVyb3V1aS54eGEMAAAAdGNxMXJjejIucXhtDAAAAGRoeXRzdXhl + LjU1egwAAAByMGNzeWxodC5samYMAAAAandndzNmM2MuaWZiDAAAAHptcGVvbHkzLjR0MwwAAAB6 + aXdtNHRtbS5yd2oMAAAAeXhrdnhneTEud3RhDAAAAHM0emF4cWE1LnpvcwwAAAB4cW5icmkwdC5t + bnEMAAAAMmV2M2MzZ3AuZHpmDAAAAHBxNXZiem9wLmh3agwAAABjM3Qzd3IzMy5qY3gMAAAANXhq + a2YxenMudTF2DAAAAGtkbXVvYzNrLmhodAwAAABhZ2RkY3V2bC5lbnoMAAAAMnZseXYyYzUucWp1 + DAAAADV2c29rY2I0LnBocgwAAABiZmZnNWZmby40dGQMAAAAa2thY25xdHkuMnptDAAAAHcxdGs0 + cjUxLjBkNAwAAABudG5sbmJ4bi51c2sMAAAAcHQya3pobGsucTRwDAAAAHd1cmcyb2IzLjVjMwwA + AAA1cXA0MmdvaS50cGMMAAAAdGQ1dnBla3EuM2p0DAAAAHdwd20zY24xLmNqegwAAABtYWZhdnRk + Yi56cXUMAAAAcWZuams0a28ucXpkDAAAAGRja2wxdTN3LmtwYQwAAAAxc3Jha291MS5rMG8MAAAA + YWRrazQwdXYuaXhkDAAAAG5uMXE0MGxvLnYzYgwAAABpY2JnbWF3by5hdnEMAAAAYTRkMWZleTIu + NXNvDAAAAGcxejVzMWJ4LndwYQwAAAAwZWt1djU1Mi5mczAMAAAAaWcxNTFwZngua29tDAAAAHZ6 + cGJocDBnLnBxZAwAAABmMDV3dmUzby5xZDQMAAAAMWV6dWt0cXIudmZvDAAAAHpxbXB1aTRtLjNq + MwwAAABjNXFkaXBpMy55cGsMAAAAbnhvZXhvbG4udHFtDAAAAG8wazQxcTFtLmwydgwAAAA1Ymp5 + dzRibi4xNDIMAAAAZjNkZGRwaXIuM3Z5DAAAAGpnbzR6YWhsLnZpNAwAAAA0ZGMzcnNteC4zMHEM + AAAAZGNxMGozNGEuY2dqDAAAAHBhNWRsa3NzLmNxcAwAAABobGhhZXFsMy5zMG4MAAAAZHlweWJ0 + cWQuMTBpDAAAAG50NDBmZ3JqLmRqeQwAAAAzZ3V1emJubC4yMnIMAAAAd2Qyc29zcHcuMWVpDAAA + ADRnNWxhc2liLmVyMQwAAAB6aGtlYmxkcC5xbW0MAAAANHl3cGRxMWguZHpuDAAAAGpjMmJ4aHRu + Lmw1cgwAAAB6djJqZG93cS5reW4MAAAAM2N0cXZncnkuMTFvDAAAADMyMjV2cXpoLms0YwwAAABr + b2gxMGMxMC5mbWEMAAAAemlieGR1ZXcuNXJjDAAAAHZ6cTFtYmFyLjEyZgwAAAB5cnBucDJnZy5p + NGsMAAAAY3N0MGl4cXUudmNnDAAAAG5veXkzY3p6LmwybwwAAABvdmdvaWs1cS54c3MMAAAAaW5x + cHhxMHoueWdpDAAAAGJ0ZGtnazBrLnZxcQwAAABjazFzbXlnei5xb3UMAAAAeXBicndkd3YubWFi + DAAAAGlmYml0ejJ1LmpvMAwAAAB5YXcwMjUxMi5xY2UMAAAAYWZ1cTNzb3IubGRiDAAAAHFyeXJh + MWFsLjJwdQwAAAAzZ3cwdGtrdy5sNWEMAAAAdXF2eGJ6NGMuenhmDAAAAGZ4cTVmZHplLnJ1bwwA + AAB6aTRvZGpvNS52Z2IMAAAAaXJpdmN5c20ubjVpDAAAAG15NHlwcmVoLnVueAwAAAB5c2ZocWpq + dS4xa2UMAAAAMmQwazA0MHkuM2kwDAAAAHk1NWhud29kLnp4dQwAAABsNXV2YTNoaC5oNHAMAAAA + cDVoYXZ2bmMubHo1DAAAAHhraHpzdmZsLjB4dwwAAAA1dDN3cjFhaC5hdW4MAAAAaHdwMDRjZnUu + bWFjDAAAAHJvNHkwMXc1LmowawwAAABrdXozYmN0ai40dG0MAAAAcnR3c2prd3MubzF3DAAAADNj + eXN0cGtuLnZ2YwwAAAAyZWR5M2hrcS56cmsMAAAAczN1emNqeTUueGF0DAAAADM1ZmNndWpwLjNs + dAwAAAAybmEzbXpmei5mY3oMAAAANXllcWphYXouMjBvDAAAADBna29pNHZwLmI1dwwAAAAyZHli + ZWN2NC5iYWUMAAAAaWQxbno1YTUua3d5DAAAAGZzc3ExM3FvLm9yZgwAAAAxeGJxMjBudi5oM2YM + AAAAazRsZ3F4aTAuZjN4DAAAAGgxYTR3MWZoLmRmbQwAAABqYTB0eDFiay53MDAMAAAAbDVmZnhk + YnkuMHVhDAAAADJzZTRhZ3B4Lmc1bAwAAABnbmdzY2l3MS53MGsMAAAAMWZ0bXhrYzMubGF0DAAA + AHNzbWF0b3JiLmJtbAwAAABseHlkajNidS4wYm0MAAAAaGwwaWkxc2suMHAzDAAAAGJhbnJ4MWwx + LmJ2bgwAAABwcnppcGd0eS51MXQMAAAANWFhNWwwcG8ucmUzDAAAAHQzM2VjeHI0LmJpaQwAAABp + bHh6MTRoMC5ycXAMAAAAdWFxMmx1MGsuemF2DAAAAGl6eTM1ZGZiLnluZgwAAABvMjJjYmV2bS5j + bGIMAAAAcGxsNGhjaXYuZHNnDAAAAHRidWl3c3RuLjJneAwAAABnM3dnMmJ0aS4yd2MMAAAAMWNv + NWY1MXIuMjRnDAAAAHNnZG56cXhkLjBqbgwAAAByenh6MTMzei55bW4MAAAAMm95ZWVpajEuMXVs + DAAAAHVmYnZ2MTRjLjBhNQwAAABhYWJnY2VtaC5iZm4MAAAAMXd1eGJhZncubHp6DAAAADFwdDEy + ZGxxLmxzdQwAAAAybjJ2d2U0bi51ajAMAAAAdTFnZ3YzdzAuaHkzDAAAAGlua2kxbXB3LmhkMgwA + AABrc3V5bWx6by5reHgMAAAAbWt4enR0cWMubXR5DAAAADNiNGI1czR0Lnd2bwwAAAB5enVoaGdw + NS5oZnQMAAAAbjNneWM0cTUuZzMwDAAAAGVndW9ldHg0LmNtMAwAAABta2JobmJyZS51djUMAAAA + eWt5eHYwbjQuc3NmDAAAAGw0bmhhYWFsLnFnbQwAAAB6b3hlMGVnZC50MXkMAAAAZnZhbXQycWou + MWVlDAAAAG16Y2J2b2ljLnE0cwwAAABoMmtrZGdsbi5vemYMAAAAYnpkbGhhMTEuczJyDAAAADVj + MWZxb2RmLnBxcwwAAABkanRxcXN1aS55MnYMAAAAYXVpdG13NWEuemZtDAAAAG9kdzEwZ3RsLmFx + NAwAAAB4cHJkdDFwcS52NW0MAAAAbG1qcWtycXYuYjFuDAAAAHBhY21pcjJnLnBkNAwAAABvbGdo + M2F3Zi5qanAMAAAAeXF6bG9uMHQucnMwDAAAAHh6eHNpeGdvLnVocAwAAAB0emt1bG5jaS5ndGcM + AAAAd2tlamFwMHkuemZlDAAAAGwzYnQzb2UwLmxnbAwAAAB6YnVoYmNlci40d2QMAAAAMnFwcDNu + b2QuZmNnDAAAAHZ4M3IydHZ2Lnl1MAwAAAB6NHVidnQxby5xYWkMAAAAemNlc2JuZW4uM3ZyDAAA + ADV5Znh2ZHV1LmhtbwwAAABvbXdjajFoNS5zbnIMAAAAaTJuaG9rZGEuM21zDAAAAHc1aGxwYXg1 + Lms1ZQwAAAB2NHAzcHQ0Zy52Z2oMAAAAMzMwNXFtZGguZngzDAAAAHNycjV2a2liLjN0NQwAAAB2 + cHJ0Z3N6ai4yYWkMAAAAY2dva3pqc2EuYWdwDAAAAGk0MGFzeDN4LjAybQwAAABnMGgxZ3d5aC4y + NDAMAAAAZWIwczBoaGYucjByDAAAAHlscnFua21nLndyZwwAAAA0c3Ayd3J2My40bzIMAAAAcXE1 + Z2ZyZ2YuZTRkDAAAAHprMjF4aHRxLnM1bwwAAAA0aWh3NXEzcC5zMDQMAAAAZmRxdmdmNG8udGxs + DAAAAGYxdnlnbmQzLnF3MwwAAAB4bGN6cWV0Mi5maXoMAAAAamVpNXl0NGEuNHVhDAAAAHJmNGti + ZmdmLndxegwAAAB4bnNoYWJ0aS5oYnQMAAAAenhwcnN4cnkuaGJ6DAAAADFnYWI1dW1kLnN5ZAwA + AABvdm1uem01MS5sNXYMAAAAd3BlZGF0NWcub2thDAAAAGp4YjV3aDU0LjVnZAwAAAAxYTIyZXBj + cS4xMnoMAAAAM2VucDFsaHYueDVhDAAAAGRtd29ocGdpLnJuYgwAAABqdmZ1MGRwMC4weXUMAAAA + Zmt6aHVwcjIudGx1DAAAAGN6Z2l3emV4LmRqYgwAAABxcGptM201ei56dmIMAAAAMHd1d2VobW4u + bW9hDAAAAHkxZ3FtajEzLnFkZAwAAABoc2pwYWlkdS40eWwMAAAAaG52cHdyMWUuaTRrDAAAAHNt + dG1yZHlmLnYwawwAAABrdXBlb3hqbi5mMzAMAAAAZW9ucGNubnguYmIzDAAAAGRvdmh5MXd4Lmhl + YgwAAAAydHRuMXRjby5nZmgMAAAAMmhkbzQ0bjAucmRiDAAAAGVpZTF1dmJtLmxkZgwAAABqenBl + dXduay4wZjQMAAAAZDIxZjVjenYudWN4DAAAAHB5aWZmaTRxLnlxNAwAAABtZXNsNXRldy40dmYM + AAAAc3ZyMDFjcHEudWduDAAAAGpvemx1Mmp4LnJnZwwAAAB4cGhoZWEycy5rbG0MAAAAbnJ3cTVt + NWkuMmx5DAAAAGlqZ3Nnc3Q0LjBmbwwAAAA0dWdmbHVmei5xdGUMAAAAeHkxZG4xMWkucDBsDAAA + AGR0dHdvY2R1LjNuNAwAAABxYW9xMGdhaS5uMW0MAAAAbHNncnB3bXcuemsxDAAAAGUxMHhwb2Jx + LmZnbwwAAAAzbGMydGo0aC5lemIMAAAAa3d3azBydjUuMm8xDAAAAHAya3ZhZGNpLmpkYgwAAAB4 + cmR2bW5sbi52MXcMAAAAYXowYm51bG4ua3drDAAAAGNtaXF5NHZqLmFlMwwAAAAxbmNmMmEwbC5s + MXQMAAAAMzVhM2ZmcmIuZmFnDAAAAGh4bHJpZDIwLmNhbQwAAABhczNwcHNmdS5xd2IMAAAAdjBp + MXZ6ZXguZXduDAAAAHczcHNqZ21iLnYxZwwAAAB4angyNG9uZy56bGYMAAAAM3RnbzFnZnAuYnIx + DAAAAGkxaDJ1b2hqLmt3NQwAAAB4ZGp6YWIway53eXEMAAAAZGphMnowMjEuNTJpDAAAAHBxdHpo + cmNkLm93cgwAAABobXZkaXdndy4wb2cMAAAAM2d5aGd0YzMuanBkDAAAAHgxYWxnZGVuLnd0dgwA + AABqYjBrcGhneC51MHgMAAAAa2kxMjRpdmQuMHhqDAAAAHkxYnpyb3p1LmZqaQwAAABtM20xZGIz + di5ka2IMAAAAZDAzbHB2cWYuaHl3DAAAAHdvcmZyZnhuLjJ0agwAAABjMnJxemk0bC5kdXIMAAAA + MjNoMmtraHEuc2h6DAAAAGxjeXl3Y2ZrLmZjegwAAABleWQ0M2NyYy41d2kMAAAAMmhycWdzM28u + amkyDAAAADJ0eTR1a2tsLjVjcwwAAAB3aHJnbmQ1Yi5lYTAMAAAAamcxa2J2Y2cuYXR2DAAAADFq + cWFyemhiLmNyYgwAAAAwdWhkbWY0NS5meW4MAAAAamIzYW9tMm8uMGhtDAAAAHR1cnppcTRvLmpi + bgwAAAB5c2d0dHN4aS5ucHcMAAAAcDN0eHVtcXIubWFzDAAAAHZqemVlanEzLmsydwwAAABmcG01 + bmdrcy52eDAMAAAAbXBzMXRtcXguM3VvDAAAADVoajFsajJkLnp5cAwAAABtMXhnb3oyay50Z3IM + AAAAZHNpcXpvdGgucnFqDAAAAHFxb3B5d3R5LmhoaQwAAABjaXVsYWtzdC5wdXEMAAAAeWdvNGJ1 + MmsuMnVnDAAAAGZtY2ticm5vLnIxYgwAAABobGhhaDRuby5wcncMAAAAZGI1dm92cGoudXFzDAAA + ADM1MnpoM3h5LjJhYgwAAAAzY3poa3VvMC5penMMAAAAM2YxanljZzMuajB2DAAAAGtiZHIwdzR1 + LmdtdAwAAAB6eDNhNHZsYS51c2sMAAAAc2J1ZmZibjQubzRwDAAAADJjMGZ2c2UzLmt2eQwAAABw + ZWN4MzNjMS56MDQMAAAAa21zYjFrNDIuNXBqDAAAAGNwM3ZianZ0LnU1egwAAAAwbDRkbWhxdC40 + eG4MAAAAYWwzM2piY2MuZ3hrDAAAADNxaXBqeHYxLnhhMAwAAABlaTVjZ3BiMi5qdWEMAAAAZTVv + dWNnd2subW1mDAAAAGVqZmpzMGhzLm1jbAwAAAAzaXhuZWt4bS54d28MAAAAdGRybWdoenoudGNi + DAAAAHU0dzFldjNnLnJ5ZAwAAAByY3Bta3p3ai5lcXcMAAAANWVrbG41MHcuNXM0DAAAAHh4NWx6 + djBtLnV3bQwAAAAwMTFjcWFuNC55enMMAAAAa25iY3JwYmwuZmx6DAAAADUzbXo1d2dvLnVsbQwA + AAB6eTByMGxzci5zMjIMAAAAYWhudGJ4ajQuYmJtDAAAADQybDF3MnlhLmJzawwAAAB6bzAxNW01 + aS50enQMAAAAYmF2YWZndTIucTNlDAAAAGdzaHljcXFmLjFpZAwAAAA1YjAzNXN5ZC4ybGcMAAAA + bHlpZnkwaG4uenh3DAAAAGV0YXBwbGdqLmczYQwAAABtNGp0dXFhdi52ZWwMAAAAcWRvb2t5eHYu + cnF3DAAAAG9qeGI0YWhsLnZjMAwAAAA0eWNqeXd6ai54aWQMAAAAc3ZqdW1uNXguNW9rDAAAADJ4 + amZsMmZhLm9icgwAAABjd2Z0aHBqdC5hcXMMAAAAdGM1M2JxeHMueDRjDAAAAHl4amRnYnYwLm9s + aAwAAABpcW5tNWh0ZS4wd2IMAAAAbGcxeXprNHEuNWpkDAAAADUydG92MmJ6LjVkaAwAAABrYzNx + MWtjMS5qeXkMAAAAZ3NoeHYzeTEuNXR6DAAAAGpydWtvMGNxLnJnYwwAAABlamFydmxmaS41cDUM + AAAAeXgwdGpzeWEudGlvDAAAAGd1MGJ5NGJvLm4weAwAAABrejVraDB6Yy53MGQMAAAAejNwZm5h + eHIuaWF6DAAAAHR5ZWI1YnFqLjN4NQwAAAByd3RzbmJuci56dGEMAAAANXB0dDV5MzQuNWhiDAAA + AGhwZmVwMHFyLmFrYwwAAABiaW5rMHlyYy5qd28MAAAAcG1lenBzamwuamQzDAAAADAzbGVnZHRv + Lmx5eQwAAABiMzNkYWk0My5xZXgMAAAAZGxudHFnbzMubm5xDAAAAGJnaGJoa2VlLnRpcwwAAABy + azBxM3Btay5jNDAMAAAAdnFjYXIxMnUua3pwDAAAADVid2FvZmJuLnVwZwwAAABiZzJremkwZS53 + cGkMAAAAZTU0enhjZnMubHR5DAAAAGVtMDVzMnBpLm90MQwAAABvYjFwMzUxbi54bWwMAAAAMGh1 + a3R4d2wuamV0DAAAAGtiaDF6dWxpLnA0MgwAAAB6b2NrZWtiYy5razAMAAAAd2pwYTFjMnIudmpx + DAAAAHVkbmFrMXlhLjJscQwAAABub3BsenF1Zy5mY3cMAAAAZWdhZGJpd2EuZnN0DAAAAGJ2cmdk + M2tjLmZmYgwAAABybnhrY2xnMy5lcmEMAAAAZGhmeGtoMmwud2wxDAAAAGFyZHBqbDNoLmJvYwwA + AAB3a2gzdWZ4eC55cGoMAAAAeXF5YmJoc2IucHVpDAAAAHRtem41cXlzLnpwcwwAAABhNGVjZ3Zi + Yi51cGsMAAAAem5wMmd6MmoubGwwDAAAAHJwMHJhcHhuLml6cwwAAAA0dHp0ZWRtbC54ZXcMAAAA + bXEwc2Zqem0uMGVyDAAAAGN5Mmx3b24xLnczdwwAAAAxbHV1cm5xYi5qcGUMAAAAc2g1dmdrM3Au + aHRqDAAAAHRlMHduYm8yLmJwcgwAAABteTB1czE1NC51b24MAAAANWhmZ2NyanYuanJjDAAAAGlm + bGxpMHl3LjNkegwAAAA1eWJkamdnaC5nZHEMAAAAY2dqaWFvejUubHlpDAAAAHJ6aXc1MnViLmM0 + ZQwAAAByNG1xMGlzZC4xbWMMAAAAeGJlcW5md2UuNG8xDAAAAHVwdTF3aXN4LnhvaQwAAABoaGd4 + ZHk0cS5qYnYMAAAAcXYzYjBqb3AubWFhDAAAAGR3NGQxZ2hjLjRjMQwAAAB0cHNrdnJyMS5iczAM + AAAAb3h0Z2N1M2EuZ2gxDAAAADNvamFlaGJ4Lm9rdAwAAAA1dGF0ZmZwby50ZjQMAAAAdHM1c2N5 + c2gudnZwDAAAAHZncGE0amJrLnRrMgwAAABoamN3c2RvMi5waHEMAAAAenZjMTMwZ3UuYjBpDAAA + AHI0MWdrb2pjLnV3ZwwAAABnaHUwazByai40c24MAAAAZnoxM294NGgubWxqDAAAAHMyZ2JjNXBq + LnF0NQwAAAAycHJmb3Joai5mYjEMAAAAdm1icm1ucWIubGIzDAAAAG1paHd2NWxhLmFmZwwAAABk + dGhuZTRubC5saWsMAAAAdHh0dmZpdHcubnN2DAAAAGtiZHR5bjBsLjFhaAwAAABzYmhia3Zhcy5q + Mm8MAAAAMHJzcDRtZmouZXU1DAAAAHpxeXVzZTV3LmY1NQwAAABrZ2dwZzVzZS5nYWgMAAAAbTRj + aTV4ZXoubGxhDAAAADEycTFkenBxLmEwdAwAAABuY3lyMnFzcy41YTAMAAAAc2Zka2VsbW0ub3Ry + DAAAADRiZWdsMmZtLnh4NQwAAABzdnBscXhoNS5lbHcMAAAAZ3hhb2FhbzUuZjJ4DAAAAG40c3Jk + Zmt6LjQ0dgwAAABicHR2Mm5qbS50amwMAAAAY2FoZTBidGouYTBzDAAAAGFkMGQ1dHJoLm0xdgwA + AAB6dWswMW9hMy51M3gMAAAAcXoxdm90c2kudXg1DAAAAGl2YnduMjAxLnIzNQwAAABveW5xaHd2 + YS5ldGIMAAAAdHAzaG56b3AuZjVlDAAAAGpxcjJwbHhqLmVldAwAAABnY2FvZG1iYS56M3MMAAAA + andxejBkaGEueGF1DAAAAGt2MG5oMmZuLnZpYgwAAAAxNGMzanEwdS5peW0MAAAAM212NGw0NTEu + aGFsDAAAAGVxbXpoMXgwLjJuawwAAABzbGZub2xndy5jMHgMAAAAdTNmZjVkdmIuZHozDAAAADVw + NWZlMm9pLnN6cwwAAAAybmF5ajFwdS5pZG8MAAAAZDAycmZiM24udjBhDAAAAGx3eW40d29jLmQy + ZwwAAAAycjR6bHRubS5qMWoMAAAAMWlyYnltMnQudXdpDAAAADBheHpqbTRwLjJycQwAAABibXR1 + eTBsaS4yZ2UVABWO+gEVjvoBLBXQDxUAFQYVBhwYDHp6bGd5eGE1LjR5YRgMMDExY3FhbjQueXpz + FgAW0A8YDHp6bGd5eGE1LjR5YRgMMDExY3FhbjQueXpzAAAAAwAAANAPAQwAAAB2MWtnNWhtci5m + aGoMAAAAZG5zdGNwbHYuZWRrDAAAAG1ta3lucHR0Lmw0awwAAAB5c3E1d2NrZy5idG8MAAAAcHJl + ZXpmdGwubXEzDAAAAGdmdXg0MWF2LmNvegwAAABnaHpnMmNqZS4yaDEMAAAAM2R0dngwMWkuZ2ty + DAAAAGV1emQxYjQxLmJxMgwAAAA0YXRkMnpuby5nNDEMAAAAeWtkc240dWkuYjNlDAAAAHRud2tm + aXNkLnFqNQwAAAB2ZmtpbGsydS4xYjQMAAAAdWN0MnIzdG0ubjEwDAAAAGRjdHdocWNvLnZnegwA + AABhc2hvYXZvMS5vamYMAAAAdWdzcWJicHMuNXQyDAAAADBwcHlyNGVoLmhtcQwAAABsNWRheHZ1 + cy5wcDIMAAAAa3d3MTFwMmEuZHhvDAAAAHNobWx6YzNpLnpkMAwAAABraTJva2FteC5hc2QMAAAA + aTFiYnUyd2IuZGpqDAAAADJ5dnZ1ZnRsLm1lcQwAAABmZzB4Y2xoay5odGgMAAAAY2l6cHh1c20u + bDQzDAAAAGFtcnRlMGxhLjJ0cwwAAAA1ZDUzZWY1NC5tMHkMAAAAcmxpczR4NG4ubXp6DAAAAHp5 + aGRjdnZsLnhieAwAAAB4ZDR3MGZxZi5sMHMMAAAAdnFzeWFoNDAuYmFuDAAAAGtvYW1raWJxLmtv + cgwAAABzNHBtdTI0dC5ia3AMAAAAMzE1ZzI0aGsucTQ0DAAAAHN3aDVxZmVnLnduagwAAAB3Z2Z4 + d3dmNC5jMmsMAAAAMWpwMmlsd3IubDVzDAAAAGNvcW90NHU1LmhncQwAAABsaXgzZ2dmaS5leG0M + AAAAcnhlbnNva3UuamlmDAAAAGUya2d5aWQ0LmYwYwwAAABkZWs1NHB4bC5pYmoMAAAAdTRpMDNi + YXAubjJ4DAAAADVqd3Yyc2M1LjJydAwAAAB1ZzR6NGxtcC4xMzAMAAAAMW5lMXVjbmgua2gzDAAA + ADQzb3N5cjVuLmpzaQwAAAB1NWpicGFmMi5mcjAMAAAAbWMxY2FvYmcuMW9xDAAAAGJlemVteHZy + LmlhZwwAAABleHJ0Z2xhMS4xdTEMAAAAb21waWxlYWwucjFnDAAAAGg0bXoxdmFiLmJlbgwAAABy + Z3BkYWx2dy5kaXgMAAAANW1pb2NiNWsuaHR0DAAAAGt0c25mdnBlLnEwZQwAAABjNDFoYWV5Yi5z + dW4MAAAAaHVobGZpdTMubG5qDAAAADBlb2F2Y3BvLmxwNQwAAABrajQ1ZXpyeC5tZTIMAAAAYXNt + ejVvNW0ueXVtDAAAAHN5ZGJqcG9uLmRmeQwAAAB5dHc1Y3FtaS5iZGMMAAAAcTN6M3JlamQuMHRm + DAAAAG8zdHB2cmJkLmtncAwAAABpbWp1MWcxay40bWQMAAAAaGVwdzF0ankuZGRyDAAAADJic2Np + YWd6LmF1ZAwAAABwdWN5bWFldi5xajAMAAAAb29ncmtlY3kuMGdiDAAAAHZnMXBjNHd6LmFoeAwA + AAB3ZHRkcXRnYy5oNXAMAAAAY2FieHdwbzAub3pxDAAAADIxcWFjYnRwLmlpdgwAAABqMHltdWJp + YS40amwMAAAAMmUzeWliNXkub294DAAAAGIxMjF0YnlvLjFtZgwAAAAyZWVpeXRteC5jMmEMAAAA + aXdramt2djQudWcyDAAAAGh4aGgwb3gwLmh4ZwwAAABkcWFpanYyZi5mYTQMAAAAejJ2YjNqbWEu + djUzDAAAAHBzNHZqdHhwLnNjNAwAAAAzMHlyMW1kZS5lZGMMAAAAeGlhZ2UzazQuZTRlDAAAADRo + NG93YWFiLmh5cAwAAABiejR0M2xkYy5ybnIMAAAANHFhZ2cwY3ouMG12DAAAAHB4aWxodWtxLm9j + cAwAAAB6c2hjMXAxeC5yY2wMAAAAMWphMXlzNW0uYXFnDAAAAHQ1ZGh0c2txLnVpdgwAAAB4cm5m + ZGJveS5mdmEMAAAAdnp6MDJwYWQuMHdrDAAAAHB2eHNpNXRwLnFzdAwAAAB5MnZhdG1iMS5vZTUM + AAAAYW1taWp6bjAuYXMxDAAAAGt3dnVlMG0yLm01cQwAAABiNDVyYzF2di5xZjQMAAAAdWJwMDBx + YWYuNDNzDAAAAHdybXpvaTFuLm1yZAwAAAB6NDBpY3hmMS54YTQMAAAAY241eXkxaDUuYWh0DAAA + AGRkbjNmaXF0LmR6YwwAAABvdXJ4ZTJrcS5mam4MAAAANXgzMXpwM2MuZ2pqDAAAAGdtMW5oZXBz + LmJzYgwAAABmbWZ4cnRsZS5jMXQMAAAAenZwYW1hc3kuemRwDAAAAHV0empqb2VmLnBscgwAAAB2 + Z3l3bmt2Zi5hNHMMAAAAY2lueG0zYXouYXkyDAAAAGp6YnF5czBtLmdzZwwAAAAxeGltM2lwdS4x + YmsMAAAAYTRzZDU0aW0ueWIzDAAAAGV6YXQwZ2dsLnVqMgwAAAB2cWxmM25sMy5ieGUMAAAAYXFj + NXUzeHouNW5pDAAAAGlxYWYweHZuLmQ1bwwAAAB3YzJyM3pmdi5zY3AMAAAAbHJxbHp1bmIuMW90 + DAAAADFvY2FnM2Y1LnBxbQwAAAB6YmIxaDJ5Yy5kZGoMAAAAbWFreDB4c2oud2NpDAAAADNyZ3Rm + amdsLmg0cAwAAAB1M2hyMGFnNC5ndHQMAAAAcjRqZmlxdTIuZmJpDAAAAGllaXoyNTBqLmswdgwA + AAB1cjR4YjFtcC56dmUMAAAAMjVuZ3FqeWgueWp2DAAAAGQwZDRyYnJmLjVnagwAAAAxb2ZjaGZk + NC53NGwMAAAAa25sYXRpYWcueTV2DAAAAGtyb3dza2xkLm5sYgwAAABlZWl1Mnhnbi5ldWQMAAAA + bGVyeWt1dWUuYnl4DAAAAG9ueDEwa2dnLnVnawwAAAB3Z2NlYjIwYS5jcm4MAAAAb3NycHMyczQu + cG95DAAAAHkyc2FtZTR4LmZxcwwAAABkc2kydGRsMi5rdHUMAAAAc3FyMHAyNGcuMTJrDAAAAG1z + cmt0ejNoLnJuaAwAAAB1YjR1dmNpbC5ocjAMAAAANTFxb2tiNGEuc29vDAAAAHVxcDR2dWhsLnZl + eAwAAAB4aHExcTVrbC5ydDEMAAAAZ3h3aDNzdnQubjFvDAAAAGYza20ycXNwLmdtdgwAAAAxaHJj + cHI1ZC5hc24MAAAAMXp5MzB6M2EubXpsDAAAAGhvc2R5b2ozLnJnNAwAAAA1anRoam14ZC5kZXYM + AAAAdmhreTVrMGkuYm9pDAAAAG5tcGVsdjEzLjIxNQwAAAA0ZXp5czFmZy5mcnQMAAAAYWNlYmtl + MTUuMzJlDAAAAHdtbXBobjNwLjNidQwAAABidHNmZXJpcS5naXIMAAAAeWQwbzJ1emsubHpwDAAA + AGwzbmdsYXQyLjIzeAwAAAByNGdob3hxYi5veHgMAAAAdnp2dG9vMXEucXJzDAAAADRoa3djbmRn + LmVvYwwAAAB6MDFjMm55ei55ZHoMAAAAem1vcjExeDQucTAyDAAAAGI1eHZ0YjMzLjFxbAwAAABx + cjNjbXluNS5vcGUMAAAAbTVjdmJoMnouYjF2DAAAAGJrMWZybG4zLmp4cQwAAAB5c3pleWdkbS5z + ZjIMAAAAbWJ3Z2xiNTQuZWRiDAAAAHFjMWJseTNuLjMxZQwAAABhamMwaWtycy56dXYMAAAAc2Vj + Ym5yankuMXdpDAAAADUydWFsaGFwLml5MwwAAAA0b2pzcXlyay4wcmwMAAAAeWxrNG9udncuc2Jw + DAAAAGNjNTJhdmh1LnAxZQwAAABvdmF1ZmVoZi50bHIMAAAAdzJmbGZtYWYuc2RsDAAAAHZhY2tv + aWN0LnZ3YgwAAAB5dHRhaHdieS4waGUMAAAAcHpiY3I1ZGkud3U1DAAAAGluajBueGpiLmkxdAwA + AABleGZoeWIzby4ya3oMAAAANTFuY295dDQubGxjDAAAAHFkamUzbmZiLjFyMAwAAABkeHl5NTRt + ei4wcDAMAAAAZm9iZXcwbHgubnViDAAAAHB2ZDJjamdhLmhnYQwAAAAwcHNhMWJmNC5qejAMAAAA + aXVsM2d6eGouem9tDAAAAHY0MG5rZXByLmlycgwAAAB0MWIxcmQwZi56YmoMAAAAemJ2NWJncTAu + MjB2DAAAAGhkb3UwbTBpLnlvdwwAAAAzZTFzaDQxay5pbWwMAAAAZW12b3pjeG4ubGtsDAAAAGwy + cHp1MXBrLnBnbAwAAABjMWhvcXJtZi5na3EMAAAAeG1ma3R4M3Iua3g0DAAAAHB5NXR2eWFtLmRs + egwAAABkZ2l1ZXlmbS5taXMMAAAAZG5wZzN0ZGMueGhjDAAAAHV6d256Y3FhLm94egwAAAB0YXox + dm5kci5uNHAMAAAAdGFwdnB0aHIueXdzDAAAAGRwMXk1anZ0Lmc1dQwAAAA0M2V1dnFkZC51emkM + AAAAMDIwbG0xMGgud3dlDAAAAGNkM2dtbWVpLmwxZgwAAAB4ZW1tM2VkcS54enQMAAAANHV3M3d4 + dHUubnAxDAAAADNjbGtrdmQyLnJsbgwAAAB1NHRpajN4ZS5vY20MAAAANWdicTFxaHouM3dyDAAA + AGpvZXJnd3cyLm5mMgwAAAB2MnVqbXd0bi5pZngMAAAAc3lkb3hrZncuZ253DAAAAGJ1dzE0bGQ1 + LmdmcwwAAAB3M2FrbGVxdS52Z2kMAAAAY2NwaDF3ZDIueGR5DAAAADBnMG9vcW4zLnZwaQwAAABj + cmFmMGYwbC5icWQMAAAAcHBlZnVobjAuM2hmDAAAAGljemt4NHozLmhjaAwAAABncTRhY25laC5p + YW8MAAAAbWQ1cXRwbXcub3ptDAAAAG5jY3ZtZTMwLndvagwAAABpbWVyYW5yaC54aTUMAAAAb2J4 + ZXZsdXIuZjBlDAAAADVoZ3p1c3ZrLmVlYgwAAABzazA0Y215bC5keXoMAAAANHh1cXZ2M3ouaWMx + DAAAAHZveHV1b2ZxLm1jcQwAAAB0djUzc21idy5hbTAMAAAAcHU0azJ2aXYuMHJyDAAAAGtubHNv + aW1uLnZsdgwAAABlMGQ0NGo0ei53NG4MAAAAcDBoaWZ3dDEudjVtDAAAAHJoY2F6c3FzLmx2aAwA + AABheWFtY2RicS5zMHkMAAAAYnh1Z3FsbDEubTFlDAAAADB4Y3V4b2ZtLm94dgwAAAB2cXZ2bXdj + cS5sMzEMAAAAaG5mbzRwd2IucjBiDAAAAHV1eDNmaHBzLmw1MQwAAABpNWpoeWJncy5tdGkMAAAA + b3pmNXIza2Eudnh2DAAAAGR6dDR4bmNwLmJldQwAAABqNGpnNDRlYS5jM3IMAAAAYmlvajVxYXgu + NGNlDAAAAHVtdDAwcXZyLjJmbwwAAABhZXprenJwby5mZ3cMAAAAZG40ZmJxNHcuajF4DAAAAGRk + eXp2bnFkLmNtcgwAAABhbXIyZWx1Mi5yaGcMAAAAZmY0cTJiemkuc20xDAAAADU0aXZ2ancwLnFi + ZQwAAAAwMWVid2p0bi53eXkMAAAAaGJ1bWRqZGkuYmZ5DAAAAGxsdmNlMTBhLnF0ZQwAAAAxeXF6 + MXN1Yi4wb2YMAAAAa3RsbXh4ZTUucHJjDAAAAGM0NGMzemd4Lmd4dAwAAABwd3h2MnJibC4zY3gM + AAAAMjFuNWl1bm4ubzFiDAAAAHNpM2JnYmUxLm5hdAwAAAB3cXRieWkzeS5td2IMAAAAcDBrd2Nk + cGkucHphDAAAAG53dnRjcWIwLmMwYwwAAAA1eTRmbnIzZi5wZHgMAAAAeWlxdHdlenkuZjExDAAA + AHJwbnZuenpyLm40cgwAAABua3ExdXExZi53MmsMAAAAZ3cxbHBjbmYueTN2DAAAADBwbHVhbDJ1 + LmpkMgwAAAB1a2RsMzAwZC5zb3AMAAAAd2NubG92aHcuMWxiDAAAAGNwZXVjcjN6LnZ6egwAAABi + c2tqemJnYy41ajQMAAAANDNkeml5ZHYubXZpDAAAAHd5anJ5d3FrLmtycgwAAABieTF0NHVucC54 + YmsMAAAAaWloZWVmbWYudnFtDAAAADJrdWZ6eWtxLmE1MgwAAABkaG01eDFkMi50dmQMAAAAbmc0 + NGVoNDMuZzV4DAAAAGp6cGZtM21qLnJreAwAAABwcXR1bHdwMS5iYXUMAAAAYmlwaWlvemcucjBp + DAAAAGxyYzJnNHNrLnJudwwAAAA0NWhnZHhxZS5scHEMAAAAd3B4emZoZWQubDUxDAAAAHg0MTJu + and6LmJ4eQwAAABwdGZieWxjYy5tYnEMAAAAeXA0eHNuZ3guZXlvDAAAAG16NTJ5cXAwLnBkZQwA + AAByajJyZGhhei5za3QMAAAAY3pobjJzZ3Iub2J6DAAAAHFveGVweWE0LnR4MgwAAAB6bDRoZXBu + by55eTIMAAAAYWh1cHFwMHoud2NlDAAAAHltMzBuajF3LnAydAwAAAAzcDBubzNvYy5xNG4MAAAA + MGZncXVya3MuY2RhDAAAAHh3MGFxY3VyLnEycAwAAAB6a2ZzZnRveC4xYWUMAAAAbHZoZ3gyZ2wu + Z2wzDAAAAHlmcnRtamViLnhzcwwAAABoYTBqb25jeS5hNWoMAAAAc3VqNXl1NG0uMmV0DAAAAHZq + b3NnMDI0LmswdwwAAABxcGx0cXd1cS5vbWYMAAAANGZhcjBnd3ouemJsDAAAAGNibGVrY2Z6Lmxk + bQwAAABlMHF1dm5qYi5rbGYMAAAAZnp3NW12cjQuNHNqDAAAADJpbGN0MzVtLnpucQwAAABxb2Fr + Znk0dy4xeWMMAAAAZ3N2bDA1bnIuZGVvDAAAADRud2kzb3l2LnVybgwAAABheDMyZ2N1by5sanEM + AAAANG5xMnBvY2YuM2RwDAAAAHlncHNodmJ0LjNmcAwAAABrZjEwZTVqdy5iYjIMAAAAMHoxbTFj + NGoud3l0DAAAAG9waWt3aWpoLnM0egwAAABkZmhydTQway52eXEMAAAAem1zemMxcWIuZG51DAAA + AGF5NW5rMTN4LnJmdwwAAABlbDFjajBtaC5kZGYMAAAAbmNrdGh4bDIua2ZoDAAAAGtuZnoxMTVl + LmU1awwAAABoZGt3NWdnai5hZm0MAAAAczN4c2FtbHcuZG55DAAAAHUwZDFxbWRlLm9ubgwAAAAy + MnlodDV0cy40eHEMAAAAbXptMGl2ZXkudTEzDAAAAGExNG8yd3p2LmowbAwAAABwZzBuMzI0ZC5m + ejIMAAAAdGkxM2M1MW8uNXpsDAAAAHphYnYxaTVjLmJiegwAAAB0ZWh3cHJldi55bjIMAAAAenps + Z3l4YTUuNHlhDAAAADVjNTI1MGNmLmZzeQwAAAB6dGFzcms1dC5peWoMAAAAdDBuNW5uZXAudnNh + DAAAAG55dmVvc3gwLndvcAwAAABsZ3hjZHRoMC5hbWEMAAAAdGIwb3FwM2wuZXZ3DAAAAGRlY2J1 + azEzLmxwZQwAAABzZnFjNXJ3eS5uZGYMAAAAMnQ1M2p5NWEua2lqDAAAAG12Z2hqdW8xLmdpagwA + AAB4MWZodmlrby5wcnoMAAAAczM1eWVmZ3AuYXVqDAAAAG1vZ2FhYm15Lm9sbQwAAABzZGo0M2g1 + bS5iZXEMAAAAdHZyaDRuM2wua3hxDAAAAGNka3oycnd0LnUxcAwAAAB4enkwaHZvci5nMHEMAAAA + bWpscWlrc2wuYml1DAAAAHgzcWZxNTFxLnh3ZQwAAAAwemZwYWVlYy5rNTIMAAAAY2wzM2xwZWou + dGc1DAAAADUxcTRxa2duLmw1dAwAAABiNHZucjNqby41d3gMAAAAMXVmb2YxZ3UuYjJoDAAAAG1r + bTJ0a2h0LnhheQwAAAA0bWJxbjVyNC52MGsMAAAAcXZxb2NjeXkuZnlnDAAAADRqbHgwamkxLndq + cAwAAABmenlyNXlmbS5wZG8MAAAAbTVyeXI0ZG4ubGZoDAAAAGxsMXFidHF4LnRidwwAAABtbDQ0 + em90NC5yaG0MAAAAbjNqcDV2Zm8ubjV1DAAAAHh4eW91cm8wLnA0cAwAAABkY2s1MXRwdi5jcWwM + AAAAcmRvMmxxYnEueXFsDAAAAGx2cnEzb2ZjLml2dwwAAABmaHY0MDJyaS55ZWIMAAAAM2h2ZXYx + bWsucXdkDAAAAGp2bnRvZWY1LnJueQwAAABieXVzeW1kdS5wc2gMAAAAb2lib2x2cHAucGplDAAA + AGZ5NGFnMGgzLmR6ZAwAAABxZmlleHpsZy5mMngMAAAAd3V3Yno1anYucHZ6DAAAAG9qNHJoNXN4 + LmgwawwAAAA0Mm52c2k1dS4yZG8MAAAAMnZ4dTVsZGMua295DAAAAHdsbGxxdXptLmR4NQwAAAB3 + M3ZweGxyYy4yM3kMAAAAaGFpY2gza2YucmVnDAAAAHdvZGQ0b2V2LndpYgwAAAByMGFvc3FvaS5o + cmwMAAAAc3k0YnhsdnIuYm14DAAAAHJuMXU1MXd1LmhsZQwAAABqazVudm90ei5iM2QMAAAAb3Bv + Y3V3ZHUubjVwDAAAAGt2MHB2dWl3LnZidQwAAABoMjQwNXptZC5kNG0MAAAAdXl0aXZzZW8udjR3 + DAAAAHdiZ29md3phLmZxZAwAAABzcWRpcHl1dS5qcXYMAAAANG8wYmp2YWcuNTM1DAAAAGdhNHBk + c3BhLjUzYgwAAABiaXBiaTVjdi5ham4MAAAAeHhyaWEwaGMudHZmDAAAAHp2ZXVvZWN6LjRrZgwA + AAB5eWFseW50Mi50bWEMAAAAZDIxbG41NTEubjBxDAAAAGp3Z29mbGYzLnlwMAwAAAA0bWpwc3di + Yy5udGcMAAAAMnMya3Bjc2MucW16DAAAAGY0cjJmdnJ5Lnp1awwAAAA0eWhtcTVheS5uczEMAAAA + d3hmMjVlZHAuaDBzDAAAAGUyd3htMXF3Lm96egwAAAAyc2M0NXB3aS4xZXcMAAAAanEzbWp6NXcu + YTRsDAAAADJncGFua2d4LnlxegwAAABreHNtZWNycS5oeGkMAAAAMnhlMmlzM28uMXUyDAAAADRp + d3Brb3MzLnp4ZgwAAAAwbmI1Z2Nwbi5paWMMAAAAcm5tbDUwMDEuMWN5DAAAAGplcWZoZjBuLnlt + egwAAABzem9yc2tlcS54cjQMAAAAbjRiMjB4MmUud2ZvDAAAAG11ZHlyYXUyLmtnMgwAAABoMTRh + ZG51ci5uc2cMAAAAZDJnNWdkMjAucjR1DAAAADRneGNodXMxLjFvdAwAAABva2t0dnFmdC56cmsM + AAAAbDBtbXp2bTMuZGd5DAAAAGFtY3hma2J6LnZobAwAAABzMjNrYjNqYS5zbGcMAAAAZ3h4b20z + a3MueG5oDAAAAHV6bHdlbGo0LjRyagwAAAAycHRjMDJzay5jbGYMAAAANGtiZmMxemQuYXcxDAAA + ADBha2Roam5rLmF3bAwAAABsbHNiM3Z3eS5lM3gMAAAAYmp3eHp5YzQueHNwDAAAAGdpM3lsdnJo + LnRxcQwAAAAyc2l2YW5iaS5kaHEMAAAAajIxZ2M0ZTMuM2NsDAAAAGJnMjRpZHh6Lm4yZQwAAAB2 + b3pnZXJmai5yd3YMAAAAY2pyMXcxdGouazRkDAAAAGdoam5seGVjLjFuegwAAAB2dnllcGFjNC5q + NGIMAAAAYWF1dHN2YnYucWRuDAAAAHF3ZTAwYzJiLjExcQwAAABjYXh2d3AzZy55bjIMAAAAbXJp + YzF1YWQuMHJsDAAAAGp0YjVzZXF1LmF4MgwAAABzY3pyZ2xlaS5oZnUMAAAAamdseDB3aHcuZW1l + DAAAAGR4cG4xa210LmtkbgwAAABteHplZG1qaS5qcnIMAAAAa3FiajRjNWouYXp3DAAAADR0MnJh + ejFvLnlqaQwAAAB1a2Z3aTNlYy5nemQMAAAAemVjbmx6b2QubDM1DAAAAGVia2JhZDFyLnlocQwA + AAB5am1xaXlycC5ld2sMAAAAZ3ozaWVnNHAuaWQwDAAAADBlbmFvZXQ1LnVvagwAAAB2cGUzZTJw + aS5qZHAMAAAANXVsdGpweWQuc3RvDAAAAHQybmtiNHJlLmkwZwwAAAAxaHI0M2R0di4wc3EMAAAA + MXdhZ2pyencueXRxDAAAAHltY3VieWdrLnduZwwAAABibG1tMmdtei52Y2gMAAAAbXM0cm1lZjEu + aGxlDAAAAHN1eG9vanFmLmxudQwAAABnamFpb2JiMC55cmkMAAAAa3lkbWU1c28ueHRiDAAAAHEy + dTN1cmh5Lm5zeQwAAAAxeTJmbHp1dC53M2IMAAAAZnJwbHlwc24ubWFpDAAAADJsbm1hdzRwLnJn + egwAAABzeXRkd2J2aS5jd3oMAAAAeWc1ZTJmemYuZjFoDAAAAGZpYjVnaGZrLndlMAwAAABjMmJ1 + MTF6eC5jY2UMAAAAYnc1aW1pYjUuMDJ3DAAAAHRhZTBmb2x5LmxlcAwAAABnamExM254eS41aGUM + AAAAengzbWt0bzQuNXV5DAAAAGVrend6bTMyLnNicwwAAABnZzB6MXh2Yi5mNG0MAAAAczIwNDVk + aDQudGJqDAAAADUwcmdoYmhiLnBzZgwAAAB5ajAxcHAzdS4za2oMAAAAcjFzaHdtYm8uYm9rDAAA + ADQxYWQxdWFlLmRhdQwAAABkZmJ2MDJ1ei4xZTUMAAAAenQyMGs1ZGwubzFqDAAAAGV3Y2Npemp6 + LnZ6YgwAAABzZDF5cTU1Yy41M2cMAAAAaDBpaGZmd2MuY3BvDAAAAHV1NDBraDBkLjR5ZwwAAABk + am4yZXczMC5lbmIMAAAAc3UwemdtaG0uaHkzDAAAADRhaXRtd2psLnpyYgwAAABzYng1Zmlwbi40 + cHQMAAAAY2NjeGlicG0ud2JiDAAAADBieHVxeDJuLmEzMAwAAAB4ZWxqcGx5dC55dWUMAAAAcXQ0 + bTJnYXoueXlmDAAAADN4aWJpY3R4LmJ1ZAwAAABnb3BhMWY0cC5icnAMAAAAcG9oc2pmMDIuaGUy + DAAAAGFmYm1peXU0Lnl6bwwAAAAwbXJsZWdreC5wa2gMAAAAeW5sempseGwubmR2DAAAAGZ0eWNt + MTJrLmJkdAwAAABzMWVpa3hvdy5qZTIMAAAAaG9sYjNjZmkuYW9iDAAAAHp4dDNhc3IxLm40agwA + AAB0ZnMxZmxrMy51ZGwMAAAAZTJ6ZWZkYzQuNHRvDAAAAHFhdXI1cTFvLmthdQwAAABoNHRjMjVx + Mi5yNWoMAAAAajBibmhleG8uYWp0DAAAAHF0cm1rNXV0LjRpMwwAAABrZ2NuZnI0eC5oaGkMAAAA + MHRweTNjdnQuaDNiDAAAAHlrMHBicGkzLmxycgwAAABkand1ZGkyaS5rdW8MAAAAaDRxamo1aWQu + NGZtDAAAAGxyNDB0amIwLm8ycwwAAAB5emxjdTB5bi5pd2UMAAAAMHZlcDViZDUuZ2ZrDAAAAHht + enhibnJnLmY1egwAAAB6bnFxbWp3dy52aHMMAAAAYmhycmx4YnUucHkwDAAAAGJvcHplMTNvLmxh + agwAAABzNGJ4ejBndy51bTMMAAAAMmgyb3J6ZHAudnUzDAAAAGpkZGs1bWZ1Lm9hawwAAABhdHEx + anlseC55cXkMAAAAMGV5Y3hmd2wuaWY1DAAAADBnMmpqbXZnLnUyaQwAAABlMGJtdXJ5bi5sZnMM + AAAAaWRmazE0aTUueG5tDAAAAGVzMndic3RzLmxmdgwAAABycXVyb3V1aS54eGEMAAAAdGNxMXJj + ejIucXhtDAAAAGRoeXRzdXhlLjU1egwAAAByMGNzeWxodC5samYMAAAAandndzNmM2MuaWZiDAAA + AHptcGVvbHkzLjR0MwwAAAB6aXdtNHRtbS5yd2oMAAAAeXhrdnhneTEud3RhDAAAAHM0emF4cWE1 + LnpvcwwAAAB4cW5icmkwdC5tbnEMAAAAMmV2M2MzZ3AuZHpmDAAAAHBxNXZiem9wLmh3agwAAABj + M3Qzd3IzMy5qY3gMAAAANXhqa2YxenMudTF2DAAAAGtkbXVvYzNrLmhodAwAAABhZ2RkY3V2bC5l + bnoMAAAAMnZseXYyYzUucWp1DAAAADV2c29rY2I0LnBocgwAAABiZmZnNWZmby40dGQMAAAAa2th + Y25xdHkuMnptDAAAAHcxdGs0cjUxLjBkNAwAAABudG5sbmJ4bi51c2sMAAAAcHQya3pobGsucTRw + DAAAAHd1cmcyb2IzLjVjMwwAAAA1cXA0MmdvaS50cGMMAAAAdGQ1dnBla3EuM2p0DAAAAHdwd20z + Y24xLmNqegwAAABtYWZhdnRkYi56cXUMAAAAcWZuams0a28ucXpkDAAAAGRja2wxdTN3LmtwYQwA + AAAxc3Jha291MS5rMG8MAAAAYWRrazQwdXYuaXhkDAAAAG5uMXE0MGxvLnYzYgwAAABpY2JnbWF3 + by5hdnEMAAAAYTRkMWZleTIuNXNvDAAAAGcxejVzMWJ4LndwYQwAAAAwZWt1djU1Mi5mczAMAAAA + aWcxNTFwZngua29tDAAAAHZ6cGJocDBnLnBxZAwAAABmMDV3dmUzby5xZDQMAAAAMWV6dWt0cXIu + dmZvDAAAAHpxbXB1aTRtLjNqMwwAAABjNXFkaXBpMy55cGsMAAAAbnhvZXhvbG4udHFtDAAAAG8w + azQxcTFtLmwydgwAAAA1Ymp5dzRibi4xNDIMAAAAZjNkZGRwaXIuM3Z5DAAAAGpnbzR6YWhsLnZp + NAwAAAA0ZGMzcnNteC4zMHEMAAAAZGNxMGozNGEuY2dqDAAAAHBhNWRsa3NzLmNxcAwAAABobGhh + ZXFsMy5zMG4MAAAAZHlweWJ0cWQuMTBpDAAAAG50NDBmZ3JqLmRqeQwAAAAzZ3V1emJubC4yMnIM + AAAAd2Qyc29zcHcuMWVpDAAAADRnNWxhc2liLmVyMQwAAAB6aGtlYmxkcC5xbW0MAAAANHl3cGRx + MWguZHpuDAAAAGpjMmJ4aHRuLmw1cgwAAAB6djJqZG93cS5reW4MAAAAM2N0cXZncnkuMTFvDAAA + ADMyMjV2cXpoLms0YwwAAABrb2gxMGMxMC5mbWEMAAAAemlieGR1ZXcuNXJjDAAAAHZ6cTFtYmFy + LjEyZgwAAAB5cnBucDJnZy5pNGsMAAAAY3N0MGl4cXUudmNnDAAAAG5veXkzY3p6LmwybwwAAABv + dmdvaWs1cS54c3MMAAAAaW5xcHhxMHoueWdpDAAAAGJ0ZGtnazBrLnZxcQwAAABjazFzbXlnei5x + b3UMAAAAeXBicndkd3YubWFiDAAAAGlmYml0ejJ1LmpvMAwAAAB5YXcwMjUxMi5xY2UMAAAAYWZ1 + cTNzb3IubGRiDAAAAHFyeXJhMWFsLjJwdQwAAAAzZ3cwdGtrdy5sNWEMAAAAdXF2eGJ6NGMuenhm + DAAAAGZ4cTVmZHplLnJ1bwwAAAB6aTRvZGpvNS52Z2IMAAAAaXJpdmN5c20ubjVpDAAAAG15NHlw + cmVoLnVueAwAAAB5c2ZocWpqdS4xa2UMAAAAMmQwazA0MHkuM2kwDAAAAHk1NWhud29kLnp4dQwA + AABsNXV2YTNoaC5oNHAMAAAAcDVoYXZ2bmMubHo1DAAAAHhraHpzdmZsLjB4dwwAAAA1dDN3cjFh + aC5hdW4MAAAAaHdwMDRjZnUubWFjDAAAAHJvNHkwMXc1LmowawwAAABrdXozYmN0ai40dG0MAAAA + cnR3c2prd3MubzF3DAAAADNjeXN0cGtuLnZ2YwwAAAAyZWR5M2hrcS56cmsMAAAAczN1emNqeTUu + eGF0DAAAADM1ZmNndWpwLjNsdAwAAAAybmEzbXpmei5mY3oMAAAANXllcWphYXouMjBvDAAAADBn + a29pNHZwLmI1dwwAAAAyZHliZWN2NC5iYWUMAAAAaWQxbno1YTUua3d5DAAAAGZzc3ExM3FvLm9y + ZgwAAAAxeGJxMjBudi5oM2YMAAAAazRsZ3F4aTAuZjN4DAAAAGgxYTR3MWZoLmRmbQwAAABqYTB0 + eDFiay53MDAMAAAAbDVmZnhkYnkuMHVhDAAAADJzZTRhZ3B4Lmc1bAwAAABnbmdzY2l3MS53MGsM + AAAAMWZ0bXhrYzMubGF0DAAAAHNzbWF0b3JiLmJtbAwAAABseHlkajNidS4wYm0MAAAAaGwwaWkx + c2suMHAzDAAAAGJhbnJ4MWwxLmJ2bgwAAABwcnppcGd0eS51MXQMAAAANWFhNWwwcG8ucmUzDAAA + AHQzM2VjeHI0LmJpaQwAAABpbHh6MTRoMC5ycXAMAAAAdWFxMmx1MGsuemF2DAAAAGl6eTM1ZGZi + LnluZgwAAABvMjJjYmV2bS5jbGIMAAAAcGxsNGhjaXYuZHNnDAAAAHRidWl3c3RuLjJneAwAAABn + M3dnMmJ0aS4yd2MMAAAAMWNvNWY1MXIuMjRnDAAAAHNnZG56cXhkLjBqbgwAAAByenh6MTMzei55 + bW4MAAAAMm95ZWVpajEuMXVsDAAAAHVmYnZ2MTRjLjBhNQwAAABhYWJnY2VtaC5iZm4MAAAAMXd1 + eGJhZncubHp6DAAAADFwdDEyZGxxLmxzdQwAAAAybjJ2d2U0bi51ajAMAAAAdTFnZ3YzdzAuaHkz + DAAAAGlua2kxbXB3LmhkMgwAAABrc3V5bWx6by5reHgMAAAAbWt4enR0cWMubXR5DAAAADNiNGI1 + czR0Lnd2bwwAAAB5enVoaGdwNS5oZnQMAAAAbjNneWM0cTUuZzMwDAAAAGVndW9ldHg0LmNtMAwA + AABta2JobmJyZS51djUMAAAAeWt5eHYwbjQuc3NmDAAAAGw0bmhhYWFsLnFnbQwAAAB6b3hlMGVn + ZC50MXkMAAAAZnZhbXQycWouMWVlDAAAAG16Y2J2b2ljLnE0cwwAAABoMmtrZGdsbi5vemYMAAAA + YnpkbGhhMTEuczJyDAAAADVjMWZxb2RmLnBxcwwAAABkanRxcXN1aS55MnYMAAAAYXVpdG13NWEu + emZtDAAAAG9kdzEwZ3RsLmFxNAwAAAB4cHJkdDFwcS52NW0MAAAAbG1qcWtycXYuYjFuDAAAAHBh + Y21pcjJnLnBkNAwAAABvbGdoM2F3Zi5qanAMAAAAeXF6bG9uMHQucnMwDAAAAHh6eHNpeGdvLnVo + cAwAAAB0emt1bG5jaS5ndGcMAAAAd2tlamFwMHkuemZlDAAAAGwzYnQzb2UwLmxnbAwAAAB6YnVo + YmNlci40d2QMAAAAMnFwcDNub2QuZmNnDAAAAHZ4M3IydHZ2Lnl1MAwAAAB6NHVidnQxby5xYWkM + AAAAemNlc2JuZW4uM3ZyDAAAADV5Znh2ZHV1LmhtbwwAAABvbXdjajFoNS5zbnIMAAAAaTJuaG9r + ZGEuM21zDAAAAHc1aGxwYXg1Lms1ZQwAAAB2NHAzcHQ0Zy52Z2oMAAAAMzMwNXFtZGguZngzDAAA + AHNycjV2a2liLjN0NQwAAAB2cHJ0Z3N6ai4yYWkMAAAAY2dva3pqc2EuYWdwDAAAAGk0MGFzeDN4 + LjAybQwAAABnMGgxZ3d5aC4yNDAMAAAAZWIwczBoaGYucjByDAAAAHlscnFua21nLndyZwwAAAA0 + c3Ayd3J2My40bzIMAAAAcXE1Z2ZyZ2YuZTRkDAAAAHprMjF4aHRxLnM1bwwAAAA0aWh3NXEzcC5z + MDQMAAAAZmRxdmdmNG8udGxsDAAAAGYxdnlnbmQzLnF3MwwAAAB4bGN6cWV0Mi5maXoMAAAAamVp + NXl0NGEuNHVhDAAAAHJmNGtiZmdmLndxegwAAAB4bnNoYWJ0aS5oYnQMAAAAenhwcnN4cnkuaGJ6 + DAAAADFnYWI1dW1kLnN5ZAwAAABvdm1uem01MS5sNXYMAAAAd3BlZGF0NWcub2thDAAAAGp4YjV3 + aDU0LjVnZAwAAAAxYTIyZXBjcS4xMnoMAAAAM2VucDFsaHYueDVhDAAAAGRtd29ocGdpLnJuYgwA + AABqdmZ1MGRwMC4weXUMAAAAZmt6aHVwcjIudGx1DAAAAGN6Z2l3emV4LmRqYgwAAABxcGptM201 + ei56dmIMAAAAMHd1d2VobW4ubW9hDAAAAHkxZ3FtajEzLnFkZAwAAABoc2pwYWlkdS40eWwMAAAA + aG52cHdyMWUuaTRrDAAAAHNtdG1yZHlmLnYwawwAAABrdXBlb3hqbi5mMzAMAAAAZW9ucGNubngu + YmIzDAAAAGRvdmh5MXd4LmhlYgwAAAAydHRuMXRjby5nZmgMAAAAMmhkbzQ0bjAucmRiDAAAAGVp + ZTF1dmJtLmxkZgwAAABqenBldXduay4wZjQMAAAAZDIxZjVjenYudWN4DAAAAHB5aWZmaTRxLnlx + NAwAAABtZXNsNXRldy40dmYMAAAAc3ZyMDFjcHEudWduDAAAAGpvemx1Mmp4LnJnZwwAAAB4cGho + ZWEycy5rbG0MAAAAbnJ3cTVtNWkuMmx5DAAAAGlqZ3Nnc3Q0LjBmbwwAAAA0dWdmbHVmei5xdGUM + AAAAeHkxZG4xMWkucDBsDAAAAGR0dHdvY2R1LjNuNAwAAABxYW9xMGdhaS5uMW0MAAAAbHNncnB3 + bXcuemsxDAAAAGUxMHhwb2JxLmZnbwwAAAAzbGMydGo0aC5lemIMAAAAa3d3azBydjUuMm8xDAAA + AHAya3ZhZGNpLmpkYgwAAAB4cmR2bW5sbi52MXcMAAAAYXowYm51bG4ua3drDAAAAGNtaXF5NHZq + LmFlMwwAAAAxbmNmMmEwbC5sMXQMAAAAMzVhM2ZmcmIuZmFnDAAAAGh4bHJpZDIwLmNhbQwAAABh + czNwcHNmdS5xd2IMAAAAdjBpMXZ6ZXguZXduDAAAAHczcHNqZ21iLnYxZwwAAAB4angyNG9uZy56 + bGYMAAAAM3RnbzFnZnAuYnIxDAAAAGkxaDJ1b2hqLmt3NQwAAAB4ZGp6YWIway53eXEMAAAAZGph + MnowMjEuNTJpDAAAAHBxdHpocmNkLm93cgwAAABobXZkaXdndy4wb2cMAAAAM2d5aGd0YzMuanBk + DAAAAHgxYWxnZGVuLnd0dgwAAABqYjBrcGhneC51MHgMAAAAa2kxMjRpdmQuMHhqDAAAAHkxYnpy + b3p1LmZqaQwAAABtM20xZGIzdi5ka2IMAAAAZDAzbHB2cWYuaHl3DAAAAHdvcmZyZnhuLjJ0agwA + AABjMnJxemk0bC5kdXIMAAAAMjNoMmtraHEuc2h6DAAAAGxjeXl3Y2ZrLmZjegwAAABleWQ0M2Ny + Yy41d2kMAAAAMmhycWdzM28uamkyDAAAADJ0eTR1a2tsLjVjcwwAAAB3aHJnbmQ1Yi5lYTAMAAAA + amcxa2J2Y2cuYXR2DAAAADFqcWFyemhiLmNyYgwAAAAwdWhkbWY0NS5meW4MAAAAamIzYW9tMm8u + MGhtDAAAAHR1cnppcTRvLmpibgwAAAB5c2d0dHN4aS5ucHcMAAAAcDN0eHVtcXIubWFzDAAAAHZq + emVlanEzLmsydwwAAABmcG01bmdrcy52eDAMAAAAbXBzMXRtcXguM3VvDAAAADVoajFsajJkLnp5 + cAwAAABtMXhnb3oyay50Z3IMAAAAZHNpcXpvdGgucnFqDAAAAHFxb3B5d3R5LmhoaQwAAABjaXVs + YWtzdC5wdXEMAAAAeWdvNGJ1MmsuMnVnDAAAAGZtY2ticm5vLnIxYgwAAABobGhhaDRuby5wcncM + AAAAZGI1dm92cGoudXFzDAAAADM1MnpoM3h5LjJhYgwAAAAzY3poa3VvMC5penMMAAAAM2Yxanlj + ZzMuajB2DAAAAGtiZHIwdzR1LmdtdAwAAAB6eDNhNHZsYS51c2sMAAAAc2J1ZmZibjQubzRwDAAA + ADJjMGZ2c2UzLmt2eQwAAABwZWN4MzNjMS56MDQMAAAAa21zYjFrNDIuNXBqDAAAAGNwM3ZianZ0 + LnU1egwAAAAwbDRkbWhxdC40eG4MAAAAYWwzM2piY2MuZ3hrDAAAADNxaXBqeHYxLnhhMAwAAABl + aTVjZ3BiMi5qdWEMAAAAZTVvdWNnd2subW1mDAAAAGVqZmpzMGhzLm1jbAwAAAAzaXhuZWt4bS54 + d28MAAAAdGRybWdoenoudGNiDAAAAHU0dzFldjNnLnJ5ZAwAAAByY3Bta3p3ai5lcXcMAAAANWVr + bG41MHcuNXM0DAAAAHh4NWx6djBtLnV3bQwAAAAwMTFjcWFuNC55enMMAAAAa25iY3JwYmwuZmx6 + DAAAADUzbXo1d2dvLnVsbQwAAAB6eTByMGxzci5zMjIMAAAAYWhudGJ4ajQuYmJtDAAAADQybDF3 + MnlhLmJzawwAAAB6bzAxNW01aS50enQMAAAAYmF2YWZndTIucTNlDAAAAGdzaHljcXFmLjFpZAwA + AAA1YjAzNXN5ZC4ybGcMAAAAbHlpZnkwaG4uenh3DAAAAGV0YXBwbGdqLmczYQwAAABtNGp0dXFh + di52ZWwMAAAAcWRvb2t5eHYucnF3DAAAAG9qeGI0YWhsLnZjMAwAAAA0eWNqeXd6ai54aWQMAAAA + c3ZqdW1uNXguNW9rDAAAADJ4amZsMmZhLm9icgwAAABjd2Z0aHBqdC5hcXMMAAAAdGM1M2JxeHMu + eDRjDAAAAHl4amRnYnYwLm9saAwAAABpcW5tNWh0ZS4wd2IMAAAAbGcxeXprNHEuNWpkDAAAADUy + dG92MmJ6LjVkaAwAAABrYzNxMWtjMS5qeXkMAAAAZ3NoeHYzeTEuNXR6DAAAAGpydWtvMGNxLnJn + YwwAAABlamFydmxmaS41cDUMAAAAeXgwdGpzeWEudGlvDAAAAGd1MGJ5NGJvLm4weAwAAABrejVr + aDB6Yy53MGQMAAAAejNwZm5heHIuaWF6DAAAAHR5ZWI1YnFqLjN4NQwAAAByd3RzbmJuci56dGEM + AAAANXB0dDV5MzQuNWhiDAAAAGhwZmVwMHFyLmFrYwwAAABiaW5rMHlyYy5qd28MAAAAcG1lenBz + amwuamQzDAAAADAzbGVnZHRvLmx5eQwAAABiMzNkYWk0My5xZXgMAAAAZGxudHFnbzMubm5xDAAA + AGJnaGJoa2VlLnRpcwwAAAByazBxM3Btay5jNDAMAAAAdnFjYXIxMnUua3pwDAAAADVid2FvZmJu + LnVwZwwAAABiZzJremkwZS53cGkMAAAAZTU0enhjZnMubHR5DAAAAGVtMDVzMnBpLm90MQwAAABv + YjFwMzUxbi54bWwMAAAAMGh1a3R4d2wuamV0DAAAAGtiaDF6dWxpLnA0MgwAAAB6b2NrZWtiYy5r + azAMAAAAd2pwYTFjMnIudmpxDAAAAHVkbmFrMXlhLjJscQwAAABub3BsenF1Zy5mY3cMAAAAZWdh + ZGJpd2EuZnN0DAAAAGJ2cmdkM2tjLmZmYgwAAABybnhrY2xnMy5lcmEMAAAAZGhmeGtoMmwud2wx + DAAAAGFyZHBqbDNoLmJvYwwAAAB3a2gzdWZ4eC55cGoMAAAAeXF5YmJoc2IucHVpDAAAAHRtem41 + cXlzLnpwcwwAAABhNGVjZ3ZiYi51cGsMAAAAem5wMmd6MmoubGwwDAAAAHJwMHJhcHhuLml6cwwA + AAA0dHp0ZWRtbC54ZXcMAAAAbXEwc2Zqem0uMGVyDAAAAGN5Mmx3b24xLnczdwwAAAAxbHV1cm5x + Yi5qcGUMAAAAc2g1dmdrM3AuaHRqDAAAAHRlMHduYm8yLmJwcgwAAABteTB1czE1NC51b24MAAAA + NWhmZ2NyanYuanJjDAAAAGlmbGxpMHl3LjNkegwAAAA1eWJkamdnaC5nZHEMAAAAY2dqaWFvejUu + bHlpDAAAAHJ6aXc1MnViLmM0ZQwAAAByNG1xMGlzZC4xbWMMAAAAeGJlcW5md2UuNG8xDAAAAHVw + dTF3aXN4LnhvaQwAAABoaGd4ZHk0cS5qYnYMAAAAcXYzYjBqb3AubWFhDAAAAGR3NGQxZ2hjLjRj + MQwAAAB0cHNrdnJyMS5iczAMAAAAb3h0Z2N1M2EuZ2gxDAAAADNvamFlaGJ4Lm9rdAwAAAA1dGF0 + ZmZwby50ZjQMAAAAdHM1c2N5c2gudnZwDAAAAHZncGE0amJrLnRrMgwAAABoamN3c2RvMi5waHEM + AAAAenZjMTMwZ3UuYjBpDAAAAHI0MWdrb2pjLnV3ZwwAAABnaHUwazByai40c24MAAAAZnoxM294 + NGgubWxqDAAAAHMyZ2JjNXBqLnF0NQwAAAAycHJmb3Joai5mYjEMAAAAdm1icm1ucWIubGIzDAAA + AG1paHd2NWxhLmFmZwwAAABkdGhuZTRubC5saWsMAAAAdHh0dmZpdHcubnN2DAAAAGtiZHR5bjBs + LjFhaAwAAABzYmhia3Zhcy5qMm8MAAAAMHJzcDRtZmouZXU1DAAAAHpxeXVzZTV3LmY1NQwAAABr + Z2dwZzVzZS5nYWgMAAAAbTRjaTV4ZXoubGxhDAAAADEycTFkenBxLmEwdAwAAABuY3lyMnFzcy41 + YTAMAAAAc2Zka2VsbW0ub3RyDAAAADRiZWdsMmZtLnh4NQwAAABzdnBscXhoNS5lbHcMAAAAZ3hh + b2FhbzUuZjJ4DAAAAG40c3JkZmt6LjQ0dgwAAABicHR2Mm5qbS50amwMAAAAY2FoZTBidGouYTBz + DAAAAGFkMGQ1dHJoLm0xdgwAAAB6dWswMW9hMy51M3gMAAAAcXoxdm90c2kudXg1DAAAAGl2Yndu + MjAxLnIzNQwAAABveW5xaHd2YS5ldGIMAAAAdHAzaG56b3AuZjVlDAAAAGpxcjJwbHhqLmVldAwA + AABnY2FvZG1iYS56M3MMAAAAandxejBkaGEueGF1DAAAAGt2MG5oMmZuLnZpYgwAAAAxNGMzanEw + dS5peW0MAAAAM212NGw0NTEuaGFsDAAAAGVxbXpoMXgwLjJuawwAAABzbGZub2xndy5jMHgMAAAA + dTNmZjVkdmIuZHozDAAAADVwNWZlMm9pLnN6cwwAAAAybmF5ajFwdS5pZG8MAAAAZDAycmZiM24u + djBhDAAAAGx3eW40d29jLmQyZwwAAAAycjR6bHRubS5qMWoMAAAAMWlyYnltMnQudXdpDAAAADBh + eHpqbTRwLjJycQwAAABibXR1eTBsaS4yZ2UVAhlMSBVwYXJxdWV0LWRvdG5ldC1zY2hlbWEVBgAV + DCUCGAJpZCUAABUMJQIYB3N0cmluZzElAAAVDCUCGAdzdHJpbmcyJQAAFqAfGSwZPCYIHBUMGTUG + CAAZGAJpZBUAFtAPFrhsFrhsJgg8GAM5OTkYATAWABbQDxgDOTk5GAEwAAAAJsBsHBUMGTUGCAAZ + GAdzdHJpbmcxFQAW0A8WuPsBFrj7ASbAbDwYDHp6cTBrZnk0LnZibhgMMDF3d3llNGcucGZzFgAW + 0A8YDHp6cTBrZnk0LnZibhgMMDF3d3llNGcucGZzAAAAJvjnAhwVDBk1BggAGRgHc3RyaW5nMhUA + FtAPFrj7ARa4+wEm+OcCPBgMenpxMGtmeTQudmJuGAwwMXd3eWU0Zy5wZnMWABbQDxgMenpxMGtm + eTQudmJuGAwwMXd3eWU0Zy5wZnMAAAAWqOMEFtAPABk8JrDjBBwVDBk1BggAGRgCaWQVABbQDxb0 + fRb0fSaw4wQ8GAQxOTk5GAQxMDAwFgAW0A8YBDE5OTkYBDEwMDAAAAAmpOEFHBUMGTUGCAAZGAdz + dHJpbmcxFQAW0A8WuPsBFrj7ASak4QU8GAx6emxneXhhNS40eWEYDDAxMWNxYW40Lnl6cxYAFtAP + GAx6emxneXhhNS40eWEYDDAxMWNxYW40Lnl6cwAAACbc3AccFQwZNQYIABkYB3N0cmluZzIVABbQ + Dxa4+wEWuPsBJtzcBzwYDHp6bGd5eGE1LjR5YRgMMDExY3FhbjQueXpzFgAW0A8YDHp6bGd5eGE1 + LjR5YRgMMDExY3FhbjQueXpzAAAAFuT0BBbQDwAoTFBhcnF1ZXQuTmV0IHZlcnNpb24gMy41LjMg + KGJ1aWxkICcwNTc0NTFiMzc2ZmE3ZDM1ODFmMmQxODAxZmIwOTY1YWZiZWFhMGMyJykAxQIAAFBB + UjE= + headers: + Accept: + - application/xml + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '80087' + Content-Type: + - application/octet-stream + User-Agent: + - azsdk-python-storage-blob/12.8.0 Python/3.8.5 (Windows-10-10.0.19041-SP0) + x-ms-blob-type: + - BlockBlob + x-ms-date: + - Fri, 09 Apr 2021 04:19:10 GMT + x-ms-encryption-algorithm: + - AES256 + x-ms-version: + - '2020-08-04' + method: PUT + uri: https://storagename.blob.core.windows.net/utqqcontainercdb31860/csvfilecdb31860 + response: + body: + string: '' + headers: + content-md5: + - z1EKaBGYeFFPXcMBK90K+w== + date: + - Fri, 09 Apr 2021 04:19:10 GMT + etag: + - '"0x8D8FB0EA01A1F5E"' + last-modified: + - Fri, 09 Apr 2021 04:19:10 GMT + server: + - Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0 + transfer-encoding: + - chunked + x-ms-content-crc64: + - f7IDcRFZujI= + x-ms-request-server-encrypted: + - 'true' + x-ms-version: + - '2020-08-04' + status: + code: 201 + message: Created +version: 1 diff --git a/sdk/storage/azure-storage-blob/tests/test_quick_query.py b/sdk/storage/azure-storage-blob/tests/test_quick_query.py index cf2e1d62ed98..98f9a6b7f343 100644 --- a/sdk/storage/azure-storage-blob/tests/test_quick_query.py +++ b/sdk/storage/azure-storage-blob/tests/test_quick_query.py @@ -6,6 +6,7 @@ # license information. # -------------------------------------------------------------------------- import base64 +import os import pytest @@ -18,7 +19,7 @@ ) # ------------------------------------------------------------------------------ -from azure.storage.blob._models import ArrowDialect, ArrowType +from azure.storage.blob import ArrowDialect, ArrowType, ParquetDialect, QuickQueryDialect CSV_DATA = b'Service,Package,Version,RepoPath,MissingDocs\r\nApp Configuration,' \ b'azure-data-appconfiguration,1,appconfiguration,FALSE\r\nEvent Hubs' \ @@ -936,4 +937,52 @@ def on_error(error): on_error=on_error, blob_format=input_format) + @GlobalStorageAccountPreparer() + def test_quick_query_input_in_parquet_format(self, resource_group, location, storage_account, storage_account_key): + # Arrange + bsc = BlobServiceClient( + self.account_url(storage_account, "blob"), + credential=storage_account_key) + self._setup(bsc) + expression = "select * from blobstorage where id < 1;" + expected_data = b"0,mdifjt55.ea3,mdifjt55.ea3\n" + + blob_name = self._get_blob_reference() + blob_client = bsc.get_blob_client(self.container_name, blob_name) + parquet_path = "parquet.parquet" + with open(parquet_path, "rb") as parquet_data: + blob_client.upload_blob(parquet_data, overwrite=True) + errors = [] + + def on_error(error): + errors.append(error) + + reader = blob_client.query_blob(expression, blob_format=QuickQueryDialect.ParquetDialect, on_error=on_error) + real_data = reader.readall() + + self.assertEqual(real_data, expected_data) + + @GlobalStorageAccountPreparer() + def test_quick_query_output_in_parquet_format(self, resource_group, location, storage_account, storage_account_key): + # Arrange + bsc = BlobServiceClient( + self.account_url(storage_account, "blob"), + credential=storage_account_key) + self._setup(bsc) + expression = "SELECT * from BlobStorage" + + blob_name = self._get_blob_reference() + blob_client = bsc.get_blob_client(self.container_name, blob_name) + parquet_path = "parquet.parquet" + with open(parquet_path, "rb") as parquet_data: + blob_client.upload_blob(parquet_data, overwrite=True) + errors = [] + + def on_error(error): + errors.append(error) + + with self.assertRaises(ValueError): + blob_client.query_blob( + expression, blob_format=ParquetDialect(), output_format=ParquetDialect(), on_error=on_error) + # ------------------------------------------------------------------------------ diff --git a/sdk/storage/azure-storage-file-datalake/azure/storage/filedatalake/__init__.py b/sdk/storage/azure-storage-file-datalake/azure/storage/filedatalake/__init__.py index c5e918819b78..8158ed9d74ab 100644 --- a/sdk/storage/azure-storage-file-datalake/azure/storage/filedatalake/__init__.py +++ b/sdk/storage/azure-storage-file-datalake/azure/storage/filedatalake/__init__.py @@ -31,6 +31,8 @@ DelimitedJsonDialect, ArrowDialect, ArrowType, + QuickQueryDialect, + ParquetDialect, DataLakeFileQueryError, AccessControlChangeResult, AccessControlChangeCounters, @@ -40,7 +42,8 @@ Metrics, RetentionPolicy, StaticWebsite, - CorsRule + CorsRule, + DeletedPathProperties ) from ._shared_access_signature import generate_account_sas, generate_file_system_sas, generate_directory_sas, \ @@ -90,6 +93,8 @@ 'DelimitedTextDialect', 'DelimitedJsonDialect', 'DataLakeFileQueryError', + 'ParquetDialect', + 'QuickQueryDialect', 'ArrowDialect', 'ArrowType', 'DataLakeFileQueryError', @@ -97,5 +102,6 @@ 'Metrics', 'RetentionPolicy', 'StaticWebsite', - 'CorsRule' + 'CorsRule', + 'DeletedPathProperties' ] diff --git a/sdk/storage/azure-storage-file-datalake/azure/storage/filedatalake/_data_lake_file_client.py b/sdk/storage/azure-storage-file-datalake/azure/storage/filedatalake/_data_lake_file_client.py index c88f655abd15..61959bb3f799 100644 --- a/sdk/storage/azure-storage-file-datalake/azure/storage/filedatalake/_data_lake_file_client.py +++ b/sdk/storage/azure-storage-file-datalake/azure/storage/filedatalake/_data_lake_file_client.py @@ -724,16 +724,20 @@ def query_file(self, query_expression, **kwargs): :keyword file_format: Optional. Defines the serialization of the data currently stored in the file. The default is to treat the file data as CSV data formatted in the default dialect. This can be overridden with - a custom DelimitedTextDialect, or alternatively a DelimitedJsonDialect. + a custom DelimitedTextDialect, or alternatively a DelimitedJsonDialect or ParquetDialect. + These dialects can be passed through their respective classes, the QuickQueryDialect enum or as a string :paramtype file_format: - ~azure.storage.filedatalake.DelimitedTextDialect or ~azure.storage.filedatalake.DelimitedJsonDialect + ~azure.storage.filedatalake.DelimitedTextDialect or ~azure.storage.filedatalake.DelimitedJsonDialect or + ~azure.storage.filedatalake.ParquetDialect or ~azure.storage.filedatalake.QuickQueryDialect or str :keyword output_format: Optional. Defines the output serialization for the data stream. By default the data will be returned - as it is represented in the file. By providing an output format, the file data will be reformatted - according to that profile. This value can be a DelimitedTextDialect or a DelimitedJsonDialect. + as it is represented in the file. By providing an output format, + the file data will be reformatted according to that profile. + This value can be a DelimitedTextDialect or a DelimitedJsonDialect or ArrowDialect. + These dialects can be passed through their respective classes, the QuickQueryDialect enum or as a string :paramtype output_format: - ~azure.storage.filedatalake.DelimitedTextDialect, ~azure.storage.filedatalake.DelimitedJsonDialect - or list[~azure.storage.filedatalake.ArrowDialect] + ~azure.storage.filedatalake.DelimitedTextDialect or ~azure.storage.filedatalake.DelimitedJsonDialect + or list[~azure.storage.filedatalake.ArrowDialect] or ~azure.storage.filedatalake.QuickQueryDialect or str :keyword lease: Required if the file has an active lease. Value can be a DataLakeLeaseClient object or the lease ID as a string. diff --git a/sdk/storage/azure-storage-file-datalake/azure/storage/filedatalake/_data_lake_service_client.py b/sdk/storage/azure-storage-file-datalake/azure/storage/filedatalake/_data_lake_service_client.py index b8cc3dc71121..21da8026db34 100644 --- a/sdk/storage/azure-storage-file-datalake/azure/storage/filedatalake/_data_lake_service_client.py +++ b/sdk/storage/azure-storage-file-datalake/azure/storage/filedatalake/_data_lake_service_client.py @@ -19,8 +19,7 @@ from ._file_system_client import FileSystemClient from ._data_lake_directory_client import DataLakeDirectoryClient from ._data_lake_file_client import DataLakeFileClient -from ._models import UserDelegationKey, FileSystemPropertiesPaged, LocationMode, AnalyticsLogging, \ - CorsRule, RetentionPolicy, StaticWebsite, Metrics +from ._models import UserDelegationKey, FileSystemPropertiesPaged, LocationMode from ._serialize import convert_dfs_url_to_blob_url @@ -495,17 +494,8 @@ def get_file_client(self, file_system, # type: Union[FileSystemProperties, str] key_encryption_key=self.key_encryption_key, key_resolver_function=self.key_resolver_function) - def set_service_properties( - self, analytics_logging=None, # type: Optional[AnalyticsLogging] - hour_metrics=None, # type: Optional[Metrics] - minute_metrics=None, # type: Optional[Metrics] - cors=None, # type: Optional[List[CorsRule]] - target_version=None, # type: Optional[str] - delete_retention_policy=None, # type: Optional[RetentionPolicy] - static_website=None, # type: Optional[StaticWebsite] - **kwargs - ): - # type: (...) -> None + def set_service_properties(self, **kwargs): + # type: (Any) -> None """Sets the properties of a storage account's Datalake service, including Azure Storage Analytics. @@ -515,30 +505,30 @@ def set_service_properties( If an element (e.g. analytics_logging) is left as None, the existing settings on the service for that functionality are preserved. - :param analytics_logging: + :keyword analytics_logging: Groups the Azure Analytics Logging settings. :type analytics_logging: ~azure.storage.filedatalake.AnalyticsLogging - :param hour_metrics: + :keyword hour_metrics: The hour metrics settings provide a summary of request statistics grouped by API in hourly aggregates. :type hour_metrics: ~azure.storage.filedatalake.Metrics - :param minute_metrics: + :keyword minute_metrics: The minute metrics settings provide request statistics for each minute. :type minute_metrics: ~azure.storage.filedatalake.Metrics - :param cors: + :keyword cors: You can include up to five CorsRule elements in the list. If an empty list is specified, all CORS rules will be deleted, and CORS will be disabled for the service. :type cors: list[~azure.storage.filedatalake.CorsRule] - :param str target_version: + :keyword str target_version: Indicates the default version to use for requests if an incoming request's version is not specified. - :param delete_retention_policy: + :keyword delete_retention_policy: The delete retention policy specifies whether to retain deleted files/directories. It also specifies the number of days and versions of file/directory to keep. :type delete_retention_policy: ~azure.storage.filedatalake.RetentionPolicy - :param static_website: + :keyword static_website: Specifies whether the static website feature is enabled, and if yes, indicates the index document and 404 error document to use. :type static_website: ~azure.storage.filedatalake.StaticWebsite @@ -546,14 +536,7 @@ def set_service_properties( The timeout parameter is expressed in seconds. :rtype: None """ - return self._blob_service_client.set_service_properties(analytics_logging=analytics_logging, - hour_metrics=hour_metrics, - minute_metrics=minute_metrics, - cors=cors, - target_version=target_version, - delete_retention_policy=delete_retention_policy, - static_website=static_website, - **kwargs) # pylint: disable=protected-access + return self._blob_service_client.set_service_properties(**kwargs) # pylint: disable=protected-access def get_service_properties(self, **kwargs): # type: (Any) -> Dict[str, Any] diff --git a/sdk/storage/azure-storage-file-datalake/azure/storage/filedatalake/_file_system_client.py b/sdk/storage/azure-storage-file-datalake/azure/storage/filedatalake/_file_system_client.py index 7aafe4efc78e..49f9b079f34b 100644 --- a/sdk/storage/azure-storage-file-datalake/azure/storage/filedatalake/_file_system_client.py +++ b/sdk/storage/azure-storage-file-datalake/azure/storage/filedatalake/_file_system_client.py @@ -884,18 +884,16 @@ def get_file_client(self, file_path # type: Union[FileProperties, str] key_encryption_key=self.key_encryption_key, key_resolver_function=self.key_resolver_function) - def get_deleted_paths(self, - name_starts_with=None, # type: Optional[str], - **kwargs): - # type: (...) -> ItemPaged[DeletedPathProperties] - """Returns a generator to list the paths(could be files or directories) under the specified file system. + def list_deleted_paths(self, **kwargs): + # type: (Any) -> ItemPaged[DeletedPathProperties] + """Returns a generator to list the deleted (file or directory) paths under the specified file system. The generator will lazily follow the continuation tokens returned by the service. .. versionadded:: 12.4.0 This operation was introduced in API version '2020-06-12'. - :param str name_starts_with: + :keyword str path_prefix: Filters the results to return only paths under the specified path. :keyword int max_results: An optional value that specifies the maximum number of items to return per page. @@ -906,6 +904,7 @@ def get_deleted_paths(self, :rtype: ~azure.core.paging.ItemPaged[~azure.storage.filedatalake.DeletedPathProperties] """ + path_prefix = kwargs.pop('path_prefix', None) results_per_page = kwargs.pop('max_results', None) timeout = kwargs.pop('timeout', None) command = functools.partial( @@ -914,5 +913,5 @@ def get_deleted_paths(self, timeout=timeout, **kwargs) return ItemPaged( - command, prefix=name_starts_with, page_iterator_class=DeletedPathPropertiesPaged, + command, prefix=path_prefix, page_iterator_class=DeletedPathPropertiesPaged, results_per_page=results_per_page, **kwargs) diff --git a/sdk/storage/azure-storage-file-datalake/azure/storage/filedatalake/_models.py b/sdk/storage/azure-storage-file-datalake/azure/storage/filedatalake/_models.py index f0204b02fc8d..70b4a24ab0e6 100644 --- a/sdk/storage/azure-storage-file-datalake/azure/storage/filedatalake/_models.py +++ b/sdk/storage/azure-storage-file-datalake/azure/storage/filedatalake/_models.py @@ -16,6 +16,7 @@ from azure.storage.blob import AccessPolicy as BlobAccessPolicy from azure.storage.blob import DelimitedTextDialect as BlobDelimitedTextDialect from azure.storage.blob import DelimitedJsonDialect as BlobDelimitedJSON +from azure.storage.blob import ParquetDialect as BlobParquetDialect from azure.storage.blob import ArrowDialect as BlobArrowDialect from azure.storage.blob._models import ContainerPropertiesPaged from azure.storage.blob._generated.models import Logging as GenLogging, Metrics as GenMetrics, \ @@ -712,6 +713,11 @@ class DelimitedTextDialect(BlobDelimitedTextDialect): """ +class ParquetDialect(BlobParquetDialect): + """Defines parquet input serialization for a file query request.""" + pass + + class ArrowDialect(BlobArrowDialect): """field of an arrow schema. @@ -724,6 +730,14 @@ class ArrowDialect(BlobArrowDialect): """ +class QuickQueryDialect(str, Enum): + """Specifies the quick query input/output dialect.""" + + DelimitedTextDialect = 'DelimitedTextDialect' + DelimitedJsonDialect = 'DelimitedJsonDialect' + ParquetDialect = 'ParquetDialect' + + class ArrowType(str, Enum): INT64 = "int64" diff --git a/sdk/storage/azure-storage-file-datalake/azure/storage/filedatalake/aio/_data_lake_service_client_async.py b/sdk/storage/azure-storage-file-datalake/azure/storage/filedatalake/aio/_data_lake_service_client_async.py index f8bbc59eb8da..ba43b0903b1d 100644 --- a/sdk/storage/azure-storage-file-datalake/azure/storage/filedatalake/aio/_data_lake_service_client_async.py +++ b/sdk/storage/azure-storage-file-datalake/azure/storage/filedatalake/aio/_data_lake_service_client_async.py @@ -19,8 +19,7 @@ from ._data_lake_directory_client_async import DataLakeDirectoryClient from ._data_lake_file_client_async import DataLakeFileClient from ._models import FileSystemPropertiesPaged -from .._models import UserDelegationKey, LocationMode, AnalyticsLogging, Metrics, CorsRule, \ - RetentionPolicy, StaticWebsite +from .._models import UserDelegationKey, LocationMode class DataLakeServiceClient(AsyncStorageAccountHostsMixin, DataLakeServiceClientBase): @@ -444,17 +443,8 @@ def get_file_client(self, file_system, # type: Union[FileSystemProperties, str] key_encryption_key=self.key_encryption_key, key_resolver_function=self.key_resolver_function) - async def set_service_properties( - self, analytics_logging=None, # type: Optional[AnalyticsLogging] - hour_metrics=None, # type: Optional[Metrics] - minute_metrics=None, # type: Optional[Metrics] - cors=None, # type: Optional[List[CorsRule]] - target_version=None, # type: Optional[str] - delete_retention_policy=None, # type: Optional[RetentionPolicy] - static_website=None, # type: Optional[StaticWebsite] - **kwargs - ): - # type: (...) -> None + async def set_service_properties(self, **kwargs): + # type: (Any) -> None """Sets the properties of a storage account's Datalake service, including Azure Storage Analytics. @@ -464,30 +454,30 @@ async def set_service_properties( .. versionadded:: 12.4.0 This operation was introduced in API version '2020-06-12'. - :param analytics_logging: + :keyword analytics_logging: Groups the Azure Analytics Logging settings. :type analytics_logging: ~azure.storage.filedatalake.AnalyticsLogging - :param hour_metrics: + :keyword hour_metrics: The hour metrics settings provide a summary of request statistics grouped by API in hourly aggregates. :type hour_metrics: ~azure.storage.filedatalake.Metrics - :param minute_metrics: + :keyword minute_metrics: The minute metrics settings provide request statistics for each minute. :type minute_metrics: ~azure.storage.filedatalake.Metrics - :param cors: + :keyword cors: You can include up to five CorsRule elements in the list. If an empty list is specified, all CORS rules will be deleted, and CORS will be disabled for the service. :type cors: list[~azure.storage.filedatalake.CorsRule] - :param str target_version: + :keyword str target_version: Indicates the default version to use for requests if an incoming request's version is not specified. - :param delete_retention_policy: + :keyword delete_retention_policy: The delete retention policy specifies whether to retain deleted files/directories. It also specifies the number of days and versions of file/directory to keep. :type delete_retention_policy: ~azure.storage.filedatalake.RetentionPolicy - :param static_website: + :keyword static_website: Specifies whether the static website feature is enabled, and if yes, indicates the index document and 404 error document to use. :type static_website: ~azure.storage.filedatalake.StaticWebsite @@ -495,14 +485,7 @@ async def set_service_properties( The timeout parameter is expressed in seconds. :rtype: None """ - return await self._blob_service_client.set_service_properties(analytics_logging=analytics_logging, - hour_metrics=hour_metrics, - minute_metrics=minute_metrics, - cors=cors, - target_version=target_version, - delete_retention_policy=delete_retention_policy, - static_website=static_website, - **kwargs) # pylint: disable=protected-access + return await self._blob_service_client.set_service_properties(**kwargs) # pylint: disable=protected-access async def get_service_properties(self, **kwargs): # type: (Any) -> Dict[str, Any] diff --git a/sdk/storage/azure-storage-file-datalake/azure/storage/filedatalake/aio/_file_system_client_async.py b/sdk/storage/azure-storage-file-datalake/azure/storage/filedatalake/aio/_file_system_client_async.py index 91c954b896f1..7122970713fa 100644 --- a/sdk/storage/azure-storage-file-datalake/azure/storage/filedatalake/aio/_file_system_client_async.py +++ b/sdk/storage/azure-storage-file-datalake/azure/storage/filedatalake/aio/_file_system_client_async.py @@ -834,18 +834,16 @@ def get_file_client(self, file_path # type: Union[FileProperties, str] key_resolver_function=self.key_resolver_function, loop=self._loop) @distributed_trace - def get_deleted_paths(self, - name_starts_with=None, # type: Optional[str], - **kwargs): - # type: (...) -> AsyncItemPaged[DeletedPathProperties] - """Returns a generator to list the paths(could be files or directories) under the specified file system. + def list_deleted_paths(self, **kwargs): + # type: (Any) -> AsyncItemPaged[DeletedPathProperties] + """Returns a generator to list the deleted (file or directory) paths under the specified file system. The generator will lazily follow the continuation tokens returned by the service. .. versionadded:: 12.4.0 This operation was introduced in API version '2020-06-12'. - :param str name_starts_with: + :keyword str path_prefix: Filters the results to return only paths under the specified path. :keyword int max_results: An optional value that specifies the maximum number of items to return per page. @@ -856,6 +854,7 @@ def get_deleted_paths(self, :rtype: ~azure.core.paging.ItemPaged[~azure.storage.filedatalake.DeletedPathProperties] """ + path_prefix = kwargs.pop('path_prefix', None) results_per_page = kwargs.pop('max_results', None) timeout = kwargs.pop('timeout', None) command = functools.partial( @@ -864,5 +863,5 @@ def get_deleted_paths(self, timeout=timeout, **kwargs) return AsyncItemPaged( - command, prefix=name_starts_with, page_iterator_class=DeletedPathPropertiesPaged, + command, prefix=path_prefix, page_iterator_class=DeletedPathPropertiesPaged, results_per_page=results_per_page, **kwargs) diff --git a/sdk/storage/azure-storage-file-datalake/setup.py b/sdk/storage/azure-storage-file-datalake/setup.py index 22814c62477b..82ef758246cf 100644 --- a/sdk/storage/azure-storage-file-datalake/setup.py +++ b/sdk/storage/azure-storage-file-datalake/setup.py @@ -93,8 +93,8 @@ ]), install_requires=[ "azure-core<2.0.0,>=1.10.0", - "msrest>=0.6.18", - "azure-storage-blob<13.0.0,>=12.8.0b1" + "msrest>=0.6.21", + "azure-storage-blob<13.0.0,>=12.9.0b1" ], extras_require={ ":python_version<'3.0'": ['futures', 'azure-storage-nspkg<4.0.0,>=3.0.0'], diff --git a/sdk/storage/azure-storage-file-datalake/tests/parquet.parquet b/sdk/storage/azure-storage-file-datalake/tests/parquet.parquet new file mode 100644 index 000000000000..8eff6678085d Binary files /dev/null and b/sdk/storage/azure-storage-file-datalake/tests/parquet.parquet differ diff --git a/sdk/storage/azure-storage-file-datalake/tests/recordings/test_datalake_service_client.test_set_hour_metrics.yaml b/sdk/storage/azure-storage-file-datalake/tests/recordings/test_datalake_service_client.test_set_hour_metrics.yaml index 8a3aaef8a699..75808cd7d66e 100644 --- a/sdk/storage/azure-storage-file-datalake/tests/recordings/test_datalake_service_client.test_set_hour_metrics.yaml +++ b/sdk/storage/azure-storage-file-datalake/tests/recordings/test_datalake_service_client.test_set_hour_metrics.yaml @@ -2,7 +2,7 @@ interactions: - request: body: ' - 1.0truetruetrue5' + 1.0truefalsetrue5' headers: Accept: - application/xml @@ -11,17 +11,17 @@ interactions: Connection: - keep-alive Content-Length: - - '267' + - '268' Content-Type: - application/xml User-Agent: - - azsdk-python-storage-blob/12.8.1b1 Python/3.8.5 (Windows-10-10.0.19041-SP0) + - azsdk-python-storage-blob/12.9.0b1 Python/3.8.5 (Windows-10-10.0.19041-SP0) x-ms-client-request-id: - - 7675879d-9bea-11eb-9017-c8348e5fffbf + - 3249dac5-a7c6-11eb-b681-c8348e5fffbf x-ms-date: - - Mon, 12 Apr 2021 23:54:47 GMT + - Wed, 28 Apr 2021 02:05:25 GMT x-ms-version: - - '2020-06-12' + - '2020-08-04' method: PUT uri: https://storagename.blob.core.windows.net/?restype=service&comp=properties response: @@ -31,13 +31,13 @@ interactions: Content-Length: - '0' Date: - - Mon, 12 Apr 2021 23:54:47 GMT + - Wed, 28 Apr 2021 02:05:24 GMT Server: - Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0 x-ms-request-id: - - e5c9e03f-801e-0055-5cf7-2f5d2b000000 + - 80857b38-d01e-0044-6ed2-3bf560000000 x-ms-version: - - '2020-06-12' + - '2020-08-04' status: code: 202 message: Accepted @@ -51,32 +51,32 @@ interactions: Connection: - keep-alive User-Agent: - - azsdk-python-storage-blob/12.8.1b1 Python/3.8.5 (Windows-10-10.0.19041-SP0) + - azsdk-python-storage-blob/12.9.0b1 Python/3.8.5 (Windows-10-10.0.19041-SP0) x-ms-client-request-id: - - 76e307d5-9bea-11eb-9616-c8348e5fffbf + - 32788c99-a7c6-11eb-8724-c8348e5fffbf x-ms-date: - - Mon, 12 Apr 2021 23:54:48 GMT + - Wed, 28 Apr 2021 02:05:25 GMT x-ms-version: - - '2020-06-12' + - '2020-08-04' method: GET uri: https://storagename.blob.core.windows.net/?restype=service&comp=properties response: body: - string: "\uFEFF1.0falsefalsefalsefalse1.0truetruetrue51.0falsefalsetrue5falsefalse2014-02-14" + string: "\uFEFF1.0falsefalsefalsefalse1.0truefalsetrue51.0falsefalsefalsefalsetrueindex.htmlerrors/error/404error.html" headers: Content-Type: - application/xml Date: - - Mon, 12 Apr 2021 23:54:47 GMT + - Wed, 28 Apr 2021 02:05:24 GMT Server: - Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0 Transfer-Encoding: - chunked x-ms-request-id: - - e5c9e0ab-801e-0055-14f7-2f5d2b000000 + - 80857bb9-d01e-0044-5bd2-3bf560000000 x-ms-version: - - '2020-06-12' + - '2020-08-04' status: code: 200 message: OK diff --git a/sdk/storage/azure-storage-file-datalake/tests/recordings/test_datalake_service_client_async.test_set_hour_metrics.yaml b/sdk/storage/azure-storage-file-datalake/tests/recordings/test_datalake_service_client_async.test_set_hour_metrics.yaml index 8dea1faa9409..f1e279a11dc7 100644 --- a/sdk/storage/azure-storage-file-datalake/tests/recordings/test_datalake_service_client_async.test_set_hour_metrics.yaml +++ b/sdk/storage/azure-storage-file-datalake/tests/recordings/test_datalake_service_client_async.test_set_hour_metrics.yaml @@ -2,22 +2,22 @@ interactions: - request: body: ' - 1.0truetruetrue5' + 1.0truefalsetrue5' headers: Accept: - application/xml Content-Length: - - '267' + - '268' Content-Type: - application/xml User-Agent: - - azsdk-python-storage-blob/12.8.1b1 Python/3.8.5 (Windows-10-10.0.19041-SP0) + - azsdk-python-storage-blob/12.9.0b1 Python/3.8.5 (Windows-10-10.0.19041-SP0) x-ms-client-request-id: - - d182be6d-9bea-11eb-8465-c8348e5fffbf + - 2b37dee6-a7c6-11eb-9248-c8348e5fffbf x-ms-date: - - Mon, 12 Apr 2021 23:57:20 GMT + - Wed, 28 Apr 2021 02:05:13 GMT x-ms-version: - - '2020-06-12' + - '2020-08-04' method: PUT uri: https://storagename.blob.core.windows.net/?restype=service&comp=properties response: @@ -25,42 +25,42 @@ interactions: string: '' headers: Content-Length: '0' - Date: Mon, 12 Apr 2021 23:57:19 GMT + Date: Wed, 28 Apr 2021 02:05:12 GMT Server: Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0 - x-ms-request-id: 40d35052-701e-006e-50f7-2f188f000000 - x-ms-version: '2020-06-12' + x-ms-request-id: 59421d43-b01e-006d-32d2-3bcb14000000 + x-ms-version: '2020-08-04' status: code: 202 message: Accepted - url: https://seannsecanary.blob.core.windows.net/?restype=service&comp=properties + url: https://seannse.blob.core.windows.net/?restype=service&comp=properties - request: body: null headers: Accept: - application/xml User-Agent: - - azsdk-python-storage-blob/12.8.1b1 Python/3.8.5 (Windows-10-10.0.19041-SP0) + - azsdk-python-storage-blob/12.9.0b1 Python/3.8.5 (Windows-10-10.0.19041-SP0) x-ms-client-request-id: - - d1c4844a-9bea-11eb-be81-c8348e5fffbf + - 2b50bdfa-a7c6-11eb-a412-c8348e5fffbf x-ms-date: - - Mon, 12 Apr 2021 23:57:20 GMT + - Wed, 28 Apr 2021 02:05:13 GMT x-ms-version: - - '2020-06-12' + - '2020-08-04' method: GET uri: https://storagename.blob.core.windows.net/?restype=service&comp=properties response: body: - string: "\uFEFF1.0falsefalsefalsefalse1.0truetruetrue51.0truetruetrue5true5falsefalse2014-02-14" + string: "\uFEFF1.0falsefalsefalsefalse1.0truefalsetrue51.0falsefalsefalsefalsetrueindex.htmlerrors/error/404error.html" headers: Content-Type: application/xml - Date: Mon, 12 Apr 2021 23:57:19 GMT + Date: Wed, 28 Apr 2021 02:05:12 GMT Server: Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0 Transfer-Encoding: chunked - x-ms-request-id: 40d350ad-701e-006e-03f7-2f188f000000 - x-ms-version: '2020-06-12' + x-ms-request-id: 59421dd9-b01e-006d-03d2-3bcb14000000 + x-ms-version: '2020-08-04' status: code: 200 message: OK - url: https://seannsecanary.blob.core.windows.net/?restype=service&comp=properties + url: https://seannse.blob.core.windows.net/?restype=service&comp=properties version: 1 diff --git a/sdk/storage/azure-storage-file-datalake/tests/recordings/test_quick_query.test_quick_query_input_in_parquet_format.yaml b/sdk/storage/azure-storage-file-datalake/tests/recordings/test_quick_query.test_quick_query_input_in_parquet_format.yaml new file mode 100644 index 000000000000..227c3694ab89 --- /dev/null +++ b/sdk/storage/azure-storage-file-datalake/tests/recordings/test_quick_query.test_quick_query_input_in_parquet_format.yaml @@ -0,0 +1,1643 @@ +interactions: +- request: + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '0' + User-Agent: + - azsdk-python-storage-dfs/12.4.0b1 Python/3.8.5 (Windows-10-10.0.19041-SP0) + x-ms-client-request-id: + - 60cf3f29-996d-11eb-a886-c8348e5fffbf + x-ms-date: + - Fri, 09 Apr 2021 19:54:21 GMT + x-ms-properties: + - '' + x-ms-version: + - '2020-06-12' + method: PUT + uri: https://storagename.dfs.core.windows.net/utqqcontainerb38317df/csvfileb38317df?resource=file + response: + body: + string: '' + headers: + Content-Length: + - '0' + Date: + - Fri, 09 Apr 2021 19:54:21 GMT + ETag: + - '"0x8D8FB9145645382"' + Last-Modified: + - Fri, 09 Apr 2021 19:54:22 GMT + Server: + - Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0 + x-ms-request-id: + - 1577b503-101f-0007-357a-2d398a000000 + x-ms-request-server-encrypted: + - 'true' + x-ms-version: + - '2020-06-12' + status: + code: 201 + message: Created +- request: + body: !!binary | + UEFSMRUAFeJrFeJrLBXQDxUAFQYVBhwYAzk5ORgBMBYAFtAPGAM5OTkYATAAAAADAAAA0A8BAQAA + ADABAAAAMQEAAAAyAQAAADMBAAAANAEAAAA1AQAAADYBAAAANwEAAAA4AQAAADkCAAAAMTACAAAA + MTECAAAAMTICAAAAMTMCAAAAMTQCAAAAMTUCAAAAMTYCAAAAMTcCAAAAMTgCAAAAMTkCAAAAMjAC + AAAAMjECAAAAMjICAAAAMjMCAAAAMjQCAAAAMjUCAAAAMjYCAAAAMjcCAAAAMjgCAAAAMjkCAAAA + MzACAAAAMzECAAAAMzICAAAAMzMCAAAAMzQCAAAAMzUCAAAAMzYCAAAAMzcCAAAAMzgCAAAAMzkC + AAAANDACAAAANDECAAAANDICAAAANDMCAAAANDQCAAAANDUCAAAANDYCAAAANDcCAAAANDgCAAAA + NDkCAAAANTACAAAANTECAAAANTICAAAANTMCAAAANTQCAAAANTUCAAAANTYCAAAANTcCAAAANTgC + AAAANTkCAAAANjACAAAANjECAAAANjICAAAANjMCAAAANjQCAAAANjUCAAAANjYCAAAANjcCAAAA + NjgCAAAANjkCAAAANzACAAAANzECAAAANzICAAAANzMCAAAANzQCAAAANzUCAAAANzYCAAAANzcC + AAAANzgCAAAANzkCAAAAODACAAAAODECAAAAODICAAAAODMCAAAAODQCAAAAODUCAAAAODYCAAAA + ODcCAAAAODgCAAAAODkCAAAAOTACAAAAOTECAAAAOTICAAAAOTMCAAAAOTQCAAAAOTUCAAAAOTYC + AAAAOTcCAAAAOTgCAAAAOTkDAAAAMTAwAwAAADEwMQMAAAAxMDIDAAAAMTAzAwAAADEwNAMAAAAx + MDUDAAAAMTA2AwAAADEwNwMAAAAxMDgDAAAAMTA5AwAAADExMAMAAAAxMTEDAAAAMTEyAwAAADEx + MwMAAAAxMTQDAAAAMTE1AwAAADExNgMAAAAxMTcDAAAAMTE4AwAAADExOQMAAAAxMjADAAAAMTIx + AwAAADEyMgMAAAAxMjMDAAAAMTI0AwAAADEyNQMAAAAxMjYDAAAAMTI3AwAAADEyOAMAAAAxMjkD + AAAAMTMwAwAAADEzMQMAAAAxMzIDAAAAMTMzAwAAADEzNAMAAAAxMzUDAAAAMTM2AwAAADEzNwMA + AAAxMzgDAAAAMTM5AwAAADE0MAMAAAAxNDEDAAAAMTQyAwAAADE0MwMAAAAxNDQDAAAAMTQ1AwAA + ADE0NgMAAAAxNDcDAAAAMTQ4AwAAADE0OQMAAAAxNTADAAAAMTUxAwAAADE1MgMAAAAxNTMDAAAA + MTU0AwAAADE1NQMAAAAxNTYDAAAAMTU3AwAAADE1OAMAAAAxNTkDAAAAMTYwAwAAADE2MQMAAAAx + NjIDAAAAMTYzAwAAADE2NAMAAAAxNjUDAAAAMTY2AwAAADE2NwMAAAAxNjgDAAAAMTY5AwAAADE3 + MAMAAAAxNzEDAAAAMTcyAwAAADE3MwMAAAAxNzQDAAAAMTc1AwAAADE3NgMAAAAxNzcDAAAAMTc4 + AwAAADE3OQMAAAAxODADAAAAMTgxAwAAADE4MgMAAAAxODMDAAAAMTg0AwAAADE4NQMAAAAxODYD + AAAAMTg3AwAAADE4OAMAAAAxODkDAAAAMTkwAwAAADE5MQMAAAAxOTIDAAAAMTkzAwAAADE5NAMA + AAAxOTUDAAAAMTk2AwAAADE5NwMAAAAxOTgDAAAAMTk5AwAAADIwMAMAAAAyMDEDAAAAMjAyAwAA + ADIwMwMAAAAyMDQDAAAAMjA1AwAAADIwNgMAAAAyMDcDAAAAMjA4AwAAADIwOQMAAAAyMTADAAAA + MjExAwAAADIxMgMAAAAyMTMDAAAAMjE0AwAAADIxNQMAAAAyMTYDAAAAMjE3AwAAADIxOAMAAAAy + MTkDAAAAMjIwAwAAADIyMQMAAAAyMjIDAAAAMjIzAwAAADIyNAMAAAAyMjUDAAAAMjI2AwAAADIy + NwMAAAAyMjgDAAAAMjI5AwAAADIzMAMAAAAyMzEDAAAAMjMyAwAAADIzMwMAAAAyMzQDAAAAMjM1 + AwAAADIzNgMAAAAyMzcDAAAAMjM4AwAAADIzOQMAAAAyNDADAAAAMjQxAwAAADI0MgMAAAAyNDMD + AAAAMjQ0AwAAADI0NQMAAAAyNDYDAAAAMjQ3AwAAADI0OAMAAAAyNDkDAAAAMjUwAwAAADI1MQMA + AAAyNTIDAAAAMjUzAwAAADI1NAMAAAAyNTUDAAAAMjU2AwAAADI1NwMAAAAyNTgDAAAAMjU5AwAA + ADI2MAMAAAAyNjEDAAAAMjYyAwAAADI2MwMAAAAyNjQDAAAAMjY1AwAAADI2NgMAAAAyNjcDAAAA + MjY4AwAAADI2OQMAAAAyNzADAAAAMjcxAwAAADI3MgMAAAAyNzMDAAAAMjc0AwAAADI3NQMAAAAy + NzYDAAAAMjc3AwAAADI3OAMAAAAyNzkDAAAAMjgwAwAAADI4MQMAAAAyODIDAAAAMjgzAwAAADI4 + NAMAAAAyODUDAAAAMjg2AwAAADI4NwMAAAAyODgDAAAAMjg5AwAAADI5MAMAAAAyOTEDAAAAMjky + AwAAADI5MwMAAAAyOTQDAAAAMjk1AwAAADI5NgMAAAAyOTcDAAAAMjk4AwAAADI5OQMAAAAzMDAD + AAAAMzAxAwAAADMwMgMAAAAzMDMDAAAAMzA0AwAAADMwNQMAAAAzMDYDAAAAMzA3AwAAADMwOAMA + AAAzMDkDAAAAMzEwAwAAADMxMQMAAAAzMTIDAAAAMzEzAwAAADMxNAMAAAAzMTUDAAAAMzE2AwAA + ADMxNwMAAAAzMTgDAAAAMzE5AwAAADMyMAMAAAAzMjEDAAAAMzIyAwAAADMyMwMAAAAzMjQDAAAA + MzI1AwAAADMyNgMAAAAzMjcDAAAAMzI4AwAAADMyOQMAAAAzMzADAAAAMzMxAwAAADMzMgMAAAAz + MzMDAAAAMzM0AwAAADMzNQMAAAAzMzYDAAAAMzM3AwAAADMzOAMAAAAzMzkDAAAAMzQwAwAAADM0 + MQMAAAAzNDIDAAAAMzQzAwAAADM0NAMAAAAzNDUDAAAAMzQ2AwAAADM0NwMAAAAzNDgDAAAAMzQ5 + AwAAADM1MAMAAAAzNTEDAAAAMzUyAwAAADM1MwMAAAAzNTQDAAAAMzU1AwAAADM1NgMAAAAzNTcD + AAAAMzU4AwAAADM1OQMAAAAzNjADAAAAMzYxAwAAADM2MgMAAAAzNjMDAAAAMzY0AwAAADM2NQMA + AAAzNjYDAAAAMzY3AwAAADM2OAMAAAAzNjkDAAAAMzcwAwAAADM3MQMAAAAzNzIDAAAAMzczAwAA + ADM3NAMAAAAzNzUDAAAAMzc2AwAAADM3NwMAAAAzNzgDAAAAMzc5AwAAADM4MAMAAAAzODEDAAAA + MzgyAwAAADM4MwMAAAAzODQDAAAAMzg1AwAAADM4NgMAAAAzODcDAAAAMzg4AwAAADM4OQMAAAAz + OTADAAAAMzkxAwAAADM5MgMAAAAzOTMDAAAAMzk0AwAAADM5NQMAAAAzOTYDAAAAMzk3AwAAADM5 + OAMAAAAzOTkDAAAANDAwAwAAADQwMQMAAAA0MDIDAAAANDAzAwAAADQwNAMAAAA0MDUDAAAANDA2 + AwAAADQwNwMAAAA0MDgDAAAANDA5AwAAADQxMAMAAAA0MTEDAAAANDEyAwAAADQxMwMAAAA0MTQD + AAAANDE1AwAAADQxNgMAAAA0MTcDAAAANDE4AwAAADQxOQMAAAA0MjADAAAANDIxAwAAADQyMgMA + AAA0MjMDAAAANDI0AwAAADQyNQMAAAA0MjYDAAAANDI3AwAAADQyOAMAAAA0MjkDAAAANDMwAwAA + ADQzMQMAAAA0MzIDAAAANDMzAwAAADQzNAMAAAA0MzUDAAAANDM2AwAAADQzNwMAAAA0MzgDAAAA + NDM5AwAAADQ0MAMAAAA0NDEDAAAANDQyAwAAADQ0MwMAAAA0NDQDAAAANDQ1AwAAADQ0NgMAAAA0 + NDcDAAAANDQ4AwAAADQ0OQMAAAA0NTADAAAANDUxAwAAADQ1MgMAAAA0NTMDAAAANDU0AwAAADQ1 + NQMAAAA0NTYDAAAANDU3AwAAADQ1OAMAAAA0NTkDAAAANDYwAwAAADQ2MQMAAAA0NjIDAAAANDYz + AwAAADQ2NAMAAAA0NjUDAAAANDY2AwAAADQ2NwMAAAA0NjgDAAAANDY5AwAAADQ3MAMAAAA0NzED + AAAANDcyAwAAADQ3MwMAAAA0NzQDAAAANDc1AwAAADQ3NgMAAAA0NzcDAAAANDc4AwAAADQ3OQMA + AAA0ODADAAAANDgxAwAAADQ4MgMAAAA0ODMDAAAANDg0AwAAADQ4NQMAAAA0ODYDAAAANDg3AwAA + ADQ4OAMAAAA0ODkDAAAANDkwAwAAADQ5MQMAAAA0OTIDAAAANDkzAwAAADQ5NAMAAAA0OTUDAAAA + NDk2AwAAADQ5NwMAAAA0OTgDAAAANDk5AwAAADUwMAMAAAA1MDEDAAAANTAyAwAAADUwMwMAAAA1 + MDQDAAAANTA1AwAAADUwNgMAAAA1MDcDAAAANTA4AwAAADUwOQMAAAA1MTADAAAANTExAwAAADUx + MgMAAAA1MTMDAAAANTE0AwAAADUxNQMAAAA1MTYDAAAANTE3AwAAADUxOAMAAAA1MTkDAAAANTIw + AwAAADUyMQMAAAA1MjIDAAAANTIzAwAAADUyNAMAAAA1MjUDAAAANTI2AwAAADUyNwMAAAA1MjgD + AAAANTI5AwAAADUzMAMAAAA1MzEDAAAANTMyAwAAADUzMwMAAAA1MzQDAAAANTM1AwAAADUzNgMA + AAA1MzcDAAAANTM4AwAAADUzOQMAAAA1NDADAAAANTQxAwAAADU0MgMAAAA1NDMDAAAANTQ0AwAA + ADU0NQMAAAA1NDYDAAAANTQ3AwAAADU0OAMAAAA1NDkDAAAANTUwAwAAADU1MQMAAAA1NTIDAAAA + NTUzAwAAADU1NAMAAAA1NTUDAAAANTU2AwAAADU1NwMAAAA1NTgDAAAANTU5AwAAADU2MAMAAAA1 + NjEDAAAANTYyAwAAADU2MwMAAAA1NjQDAAAANTY1AwAAADU2NgMAAAA1NjcDAAAANTY4AwAAADU2 + OQMAAAA1NzADAAAANTcxAwAAADU3MgMAAAA1NzMDAAAANTc0AwAAADU3NQMAAAA1NzYDAAAANTc3 + AwAAADU3OAMAAAA1NzkDAAAANTgwAwAAADU4MQMAAAA1ODIDAAAANTgzAwAAADU4NAMAAAA1ODUD + AAAANTg2AwAAADU4NwMAAAA1ODgDAAAANTg5AwAAADU5MAMAAAA1OTEDAAAANTkyAwAAADU5MwMA + AAA1OTQDAAAANTk1AwAAADU5NgMAAAA1OTcDAAAANTk4AwAAADU5OQMAAAA2MDADAAAANjAxAwAA + ADYwMgMAAAA2MDMDAAAANjA0AwAAADYwNQMAAAA2MDYDAAAANjA3AwAAADYwOAMAAAA2MDkDAAAA + NjEwAwAAADYxMQMAAAA2MTIDAAAANjEzAwAAADYxNAMAAAA2MTUDAAAANjE2AwAAADYxNwMAAAA2 + MTgDAAAANjE5AwAAADYyMAMAAAA2MjEDAAAANjIyAwAAADYyMwMAAAA2MjQDAAAANjI1AwAAADYy + NgMAAAA2MjcDAAAANjI4AwAAADYyOQMAAAA2MzADAAAANjMxAwAAADYzMgMAAAA2MzMDAAAANjM0 + AwAAADYzNQMAAAA2MzYDAAAANjM3AwAAADYzOAMAAAA2MzkDAAAANjQwAwAAADY0MQMAAAA2NDID + AAAANjQzAwAAADY0NAMAAAA2NDUDAAAANjQ2AwAAADY0NwMAAAA2NDgDAAAANjQ5AwAAADY1MAMA + AAA2NTEDAAAANjUyAwAAADY1MwMAAAA2NTQDAAAANjU1AwAAADY1NgMAAAA2NTcDAAAANjU4AwAA + ADY1OQMAAAA2NjADAAAANjYxAwAAADY2MgMAAAA2NjMDAAAANjY0AwAAADY2NQMAAAA2NjYDAAAA + NjY3AwAAADY2OAMAAAA2NjkDAAAANjcwAwAAADY3MQMAAAA2NzIDAAAANjczAwAAADY3NAMAAAA2 + NzUDAAAANjc2AwAAADY3NwMAAAA2NzgDAAAANjc5AwAAADY4MAMAAAA2ODEDAAAANjgyAwAAADY4 + MwMAAAA2ODQDAAAANjg1AwAAADY4NgMAAAA2ODcDAAAANjg4AwAAADY4OQMAAAA2OTADAAAANjkx + AwAAADY5MgMAAAA2OTMDAAAANjk0AwAAADY5NQMAAAA2OTYDAAAANjk3AwAAADY5OAMAAAA2OTkD + AAAANzAwAwAAADcwMQMAAAA3MDIDAAAANzAzAwAAADcwNAMAAAA3MDUDAAAANzA2AwAAADcwNwMA + AAA3MDgDAAAANzA5AwAAADcxMAMAAAA3MTEDAAAANzEyAwAAADcxMwMAAAA3MTQDAAAANzE1AwAA + ADcxNgMAAAA3MTcDAAAANzE4AwAAADcxOQMAAAA3MjADAAAANzIxAwAAADcyMgMAAAA3MjMDAAAA + NzI0AwAAADcyNQMAAAA3MjYDAAAANzI3AwAAADcyOAMAAAA3MjkDAAAANzMwAwAAADczMQMAAAA3 + MzIDAAAANzMzAwAAADczNAMAAAA3MzUDAAAANzM2AwAAADczNwMAAAA3MzgDAAAANzM5AwAAADc0 + MAMAAAA3NDEDAAAANzQyAwAAADc0MwMAAAA3NDQDAAAANzQ1AwAAADc0NgMAAAA3NDcDAAAANzQ4 + AwAAADc0OQMAAAA3NTADAAAANzUxAwAAADc1MgMAAAA3NTMDAAAANzU0AwAAADc1NQMAAAA3NTYD + AAAANzU3AwAAADc1OAMAAAA3NTkDAAAANzYwAwAAADc2MQMAAAA3NjIDAAAANzYzAwAAADc2NAMA + AAA3NjUDAAAANzY2AwAAADc2NwMAAAA3NjgDAAAANzY5AwAAADc3MAMAAAA3NzEDAAAANzcyAwAA + ADc3MwMAAAA3NzQDAAAANzc1AwAAADc3NgMAAAA3NzcDAAAANzc4AwAAADc3OQMAAAA3ODADAAAA + NzgxAwAAADc4MgMAAAA3ODMDAAAANzg0AwAAADc4NQMAAAA3ODYDAAAANzg3AwAAADc4OAMAAAA3 + ODkDAAAANzkwAwAAADc5MQMAAAA3OTIDAAAANzkzAwAAADc5NAMAAAA3OTUDAAAANzk2AwAAADc5 + NwMAAAA3OTgDAAAANzk5AwAAADgwMAMAAAA4MDEDAAAAODAyAwAAADgwMwMAAAA4MDQDAAAAODA1 + AwAAADgwNgMAAAA4MDcDAAAAODA4AwAAADgwOQMAAAA4MTADAAAAODExAwAAADgxMgMAAAA4MTMD + AAAAODE0AwAAADgxNQMAAAA4MTYDAAAAODE3AwAAADgxOAMAAAA4MTkDAAAAODIwAwAAADgyMQMA + AAA4MjIDAAAAODIzAwAAADgyNAMAAAA4MjUDAAAAODI2AwAAADgyNwMAAAA4MjgDAAAAODI5AwAA + ADgzMAMAAAA4MzEDAAAAODMyAwAAADgzMwMAAAA4MzQDAAAAODM1AwAAADgzNgMAAAA4MzcDAAAA + ODM4AwAAADgzOQMAAAA4NDADAAAAODQxAwAAADg0MgMAAAA4NDMDAAAAODQ0AwAAADg0NQMAAAA4 + NDYDAAAAODQ3AwAAADg0OAMAAAA4NDkDAAAAODUwAwAAADg1MQMAAAA4NTIDAAAAODUzAwAAADg1 + NAMAAAA4NTUDAAAAODU2AwAAADg1NwMAAAA4NTgDAAAAODU5AwAAADg2MAMAAAA4NjEDAAAAODYy + AwAAADg2MwMAAAA4NjQDAAAAODY1AwAAADg2NgMAAAA4NjcDAAAAODY4AwAAADg2OQMAAAA4NzAD + AAAAODcxAwAAADg3MgMAAAA4NzMDAAAAODc0AwAAADg3NQMAAAA4NzYDAAAAODc3AwAAADg3OAMA + AAA4NzkDAAAAODgwAwAAADg4MQMAAAA4ODIDAAAAODgzAwAAADg4NAMAAAA4ODUDAAAAODg2AwAA + ADg4NwMAAAA4ODgDAAAAODg5AwAAADg5MAMAAAA4OTEDAAAAODkyAwAAADg5MwMAAAA4OTQDAAAA + ODk1AwAAADg5NgMAAAA4OTcDAAAAODk4AwAAADg5OQMAAAA5MDADAAAAOTAxAwAAADkwMgMAAAA5 + MDMDAAAAOTA0AwAAADkwNQMAAAA5MDYDAAAAOTA3AwAAADkwOAMAAAA5MDkDAAAAOTEwAwAAADkx + MQMAAAA5MTIDAAAAOTEzAwAAADkxNAMAAAA5MTUDAAAAOTE2AwAAADkxNwMAAAA5MTgDAAAAOTE5 + AwAAADkyMAMAAAA5MjEDAAAAOTIyAwAAADkyMwMAAAA5MjQDAAAAOTI1AwAAADkyNgMAAAA5MjcD + AAAAOTI4AwAAADkyOQMAAAA5MzADAAAAOTMxAwAAADkzMgMAAAA5MzMDAAAAOTM0AwAAADkzNQMA + AAA5MzYDAAAAOTM3AwAAADkzOAMAAAA5MzkDAAAAOTQwAwAAADk0MQMAAAA5NDIDAAAAOTQzAwAA + ADk0NAMAAAA5NDUDAAAAOTQ2AwAAADk0NwMAAAA5NDgDAAAAOTQ5AwAAADk1MAMAAAA5NTEDAAAA + OTUyAwAAADk1MwMAAAA5NTQDAAAAOTU1AwAAADk1NgMAAAA5NTcDAAAAOTU4AwAAADk1OQMAAAA5 + NjADAAAAOTYxAwAAADk2MgMAAAA5NjMDAAAAOTY0AwAAADk2NQMAAAA5NjYDAAAAOTY3AwAAADk2 + OAMAAAA5NjkDAAAAOTcwAwAAADk3MQMAAAA5NzIDAAAAOTczAwAAADk3NAMAAAA5NzUDAAAAOTc2 + AwAAADk3NwMAAAA5NzgDAAAAOTc5AwAAADk4MAMAAAA5ODEDAAAAOTgyAwAAADk4MwMAAAA5ODQD + AAAAOTg1AwAAADk4NgMAAAA5ODcDAAAAOTg4AwAAADk4OQMAAAA5OTADAAAAOTkxAwAAADk5MgMA + AAA5OTMDAAAAOTk0AwAAADk5NQMAAAA5OTYDAAAAOTk3AwAAADk5OAMAAAA5OTkVABWO+gEVjvoB + LBXQDxUAFQYVBhwYDHp6cTBrZnk0LnZibhgMMDF3d3llNGcucGZzFgAW0A8YDHp6cTBrZnk0LnZi + bhgMMDF3d3llNGcucGZzAAAAAwAAANAPAQwAAABtZGlmanQ1NS5lYTMMAAAANWRtdnFldmcuamsw + DAAAAHNmdGdtZ3N4LmIxZAwAAAB6cm9xdnM1dC5samkMAAAAYW8zamF0bmMuMXZoDAAAAHUzYmZ1 + dmRsLjF3cgwAAABqcWN3M2VyMy5sdDIMAAAAc2gxc3doZXQuYnczDAAAAGkwc3EzMDVvLmg1dQwA + AAB1NTNjZWxhMC5zZ2IMAAAAemZybTVobHEud3J1DAAAAGN6Y2Nra3QyLnJpMAwAAABxMG40NTJl + NC51bnkMAAAAanVvenVtYWEudmZ2DAAAADFtdGZvMTNtLnhlaQwAAABjd3RhZWQyci5xZHcMAAAA + M215czB5a2YuYWdqDAAAAHZlYXVpbTNtLjNhMwwAAAB1NHh1cWZxci5ubXEMAAAAbHd1aG5kbTAu + d2pmDAAAAGtqdXkycm50LnVqdAwAAABxeGNpd3JpMS5seDEMAAAAbHBlYnRqNXcuZmMwDAAAAHp0 + aWoxcWNiLml5MwwAAAAzbXdyZXpwMi5xaTAMAAAAYXoyamF3M2EuY2RmDAAAAHBjanpvdzF1Lm0w + MAwAAAAzZHlxdmg0MS5wYWMMAAAAMGFqY3lkcHMuYTRkDAAAAGI1MnJtY2htLnNoZQwAAABwczBz + ZGZzei5lcmMMAAAAZjUxdDNkaGIuanZjDAAAADV6cmhzYnpqLjF4YgwAAABqMmxtZnpzMi5xZmIM + AAAAcjBlcngxaXQuaXRyDAAAAGpiMGRzdTAxLnBlbwwAAAAzd2owZGsybi5hczIMAAAAem5iemhn + aXAuY2xxDAAAAG5xYmJwcHJ1LmZncQwAAABncDF4emYxZy4zeGQMAAAAcm95ZG9udWsuYjJqDAAA + AGVlZ2czY3FzLml0eAwAAABtNHYxd29sdC40bGgMAAAAcHV4MHp5ZGMubHZsDAAAAGRiZGZtc3Iy + LmlrNAwAAAB1cXQ1c2EzaS5hbmsMAAAANWpjaWpoMWcua2dtDAAAAHIwbm50eTRwLnFlMAwAAAA0 + eGMxcGMzai5vemYMAAAAZDN4dzNoZ2EuYWZkDAAAAHZlMHVtZnl5Lms1agwAAABhcHljZ2h1aC5h + bHIMAAAAY3l6Z2twaDQuM2ljDAAAAGJjZTJ5dmNxLmhhbQwAAABveGxhdGdudy5hdG8MAAAAdGpn + b2tzZTIudTRzDAAAAGt1MWw1NDVkLnB3ZgwAAAB1Y2VhYmxjcS5odnUMAAAAc2x3dXZjaXkucXlm + DAAAAG9seWMwcml2LmhuYgwAAAB3cmN6bXEwbC5yZ3cMAAAAc3F3aTVla3UuZnl6DAAAAHdua2Vz + Y25rLm5kbwwAAABoajRzbDVqMS5mdXkMAAAAczR4bmJoMmMudGgwDAAAADVobHZvZ2l3LndtMQwA + AABjcTBuNDVwei5mc3AMAAAAemYydndqaXIuZXVxDAAAADVqeHZkNTMwLnp2NQwAAABqc2N2b3lj + Yy5xcWcMAAAAbHNqbnp2ZmIua3J3DAAAADRwYWliaHoxLnYxcAwAAAB1cmkwMmFjMy5zYnkMAAAA + bWc1cXdiMXEudGVqDAAAAG5sYmd5b2k1LmZkZwwAAABrM3ZiMW1vby5xYWsMAAAAdmN5Z3FzcWUu + dXZiDAAAAGRobWFheWc1LnNrYQwAAAB0dW9sZ3lobS5seGQMAAAAcW1mdXJrMWcucmNnDAAAAHMy + ZmdlMDAzLmNkMQwAAABpM25sY256dy4wNGwMAAAAc2UxNHJmeWwucG1zDAAAAHR0eW9kc251LjQ1 + ZQwAAABtcmQxamJ0Zy5uZjEMAAAAeWNtcG5ldzQueTFnDAAAAHd6dmF6cHZqLmFoeAwAAAA1bXVy + NGt2ei5mZWoMAAAAM2NoYnN6dmYubXl2DAAAAHBldGsyZzVxLmxnZwwAAAA1bTU0Zmdnby5rdjUM + AAAAeXptczVvMHMuNTN6DAAAADB4NTRsZHN5LmdxdgwAAABnZWlzemdhMS53ZnIMAAAAamExY2xh + dHcuNWNpDAAAAG9ydHVzdnlwLnp1dwwAAAAyYTJueHNxbS5hdHIMAAAAeW5sNXR0eWgubTVsDAAA + AG5xY2k0bjUxLjM0dAwAAABrMjRraXpsZC50aXQMAAAAcHBwZmNwMmQuenRxDAAAAGtnbGl5ZXN0 + LmFmdgwAAAAzbGFlb25nbi5qenoMAAAAaDA1djA1YnQuc253DAAAAGVrZGp0Y3U1LjNicAwAAAA0 + dmp3eTJhei5kc3cMAAAAYzR3MjF6ZXAuYWNzDAAAAG1hZmtrdGh1LjN5dAwAAABqaDV2ZGx6eC54 + aGIMAAAAanYzZ2lhMDAuemFxDAAAAGxucjAxemRkLmh0eAwAAABtbmNkZjRudS5idnQMAAAAY3l1 + ajNjcjUuYmVhDAAAAGt2cG5kem94Lm1vbQwAAAAyZjB0c2Vuby5tNWkMAAAAcTJvbGRtbDQuZHly + DAAAAHFqMTBqY3BjLmhrdwwAAABjMXZ3bWtvYi56azUMAAAAdWRtNGFiMXMuM3FtDAAAAGtxZ2I1 + ZndsLnV6MwwAAABla21uYjBoZC55c3IMAAAAYWdqYnNrbnIuMmd5DAAAAGZwNGRqamxsLm1meQwA + AABibzVkZW1oeC5taHcMAAAAcnppZ29ldWkuYnhkDAAAAHhhZmUwaWlrLnQ1ZQwAAABybXZreHN6 + ZS5id2EMAAAAaHRxNWZndm8uaGdlDAAAAGczeXBicGprLnY0ZQwAAABtbXYwb3lieC5rM2cMAAAA + ZGhqMGIxY3kudm5tDAAAAGJoYm5kZGRjLnp1cgwAAABid2NicDQxZC55dG4MAAAAZGhoZ2d0dGku + MWhrDAAAAHFwa3J2MW40LmlvcAwAAABnMGNsdDUxbS5wYnEMAAAAbnhsbGRhYW8ua2RwDAAAADBu + cTV0Y3J3LmpldAwAAAAzNDAzbW9tai5nbGgMAAAAcG1kNHp6aGsueXJzDAAAAGYxcmMwNGp0LjFr + bAwAAAA0dXhmc2loaS5tMHUMAAAAZWx6Z2t4dmoucmplDAAAAGxrdmY1b3gyLmpqMAwAAABhejIy + NG1qci5zZ24MAAAAemYwemFwdW0udnZjDAAAAGNjZnBqMG95LjRpZgwAAABtazB4dXZ5MS5pMjEM + AAAAMjRmbjJ6eHIudGtqDAAAAG96eWZ1b3JuLjFybgwAAABhdnN3dTF2Zy5vYXMMAAAAcmNtaHhv + czMucnptDAAAAGhyajVmZ3NnLjM1MQwAAAB0eWlibmV5bC54aHQMAAAANXIzZHV6b2cuamlnDAAA + AHBuMXJ5ZWFnLmV1bAwAAAB6MmFsbXJ6ZS5tdHkMAAAAenpxMGtmeTQudmJuDAAAAHJ0cTBkZG9n + LjV1ZwwAAAB3ZXRlc2hteS5kYW0MAAAAZWc0M2tvMG8uamhnDAAAAHNxaGdhaW1wLnQ0YgwAAAB6 + cDRtdmh1Yy5xbW0MAAAAM2dnd3F3aHYuZ3MzDAAAAHd1emNxb3Z4LmZqMgwAAAAxbDFtNDFiai5n + ZHcMAAAAdnFib3FrcHQuMzJ2DAAAAGU1bTR0MmVxLnhsNAwAAABmMXhtMTN6eS5langMAAAAMXNl + cTVjaG0ub3BoDAAAAHgzYmt3Z3JyLjViYQwAAAA1MXNqeWNncy51bWgMAAAAMHNrdmJvanEueTBo + DAAAAHo0anJ5YmYwLmVvbAwAAABxaXNmbDRsci5iZXEMAAAAb2xmZ2RhYnoud3djDAAAAGFnem1o + eHV1LmN3aAwAAABiNXB4bTR2dy5yamIMAAAAbTBzb28xanYubG5xDAAAAHJ4dWJ2dmdwLnhnZgwA + AAB0MzJuM3huZS5kZWgMAAAAdWZvMG1sNWsuanphDAAAAGJqZmQ0cWNvLjRtZAwAAABkdnJmZW0y + cC51bGgMAAAAdGJ6Z2loM3YudHQ1DAAAAGlmeTJlcHVrLnNxNQwAAABmYWlsMzVieS5ycTMMAAAA + bTVlZ24yZmsuYWllDAAAADBsaGlrbHFrLm9iegwAAABsb3h0eHlvdS4wMWcMAAAAbXYzcm5lZW8u + cmljDAAAAHI0cnpyeWkyLnF3NQwAAABxcmJsMDVxei4wNWUMAAAAYXcycHJqYmEubTNhDAAAAGJo + Z3l2aXZqLmNiMwwAAABkbHhlcTVjMC5vcnYMAAAAbjN2MDRyaHAuYWV4DAAAAGQxcXZ1ZmltLnBi + dwwAAABveWVyanp2dS5wZm8MAAAAbnVheGtib3YucXB1DAAAAGtkeWRhcWlyLndjcgwAAAB3YTM0 + Y3VrMy5iZGcMAAAAZTVuMWl4anoud3JrDAAAADJycmk0MXBqLmV2cgwAAABoeHJqNHJzZS54Y20M + AAAAdzQxanFwemMueDF4DAAAAGJqbTJhdTNyLnR5eQwAAAB5eTFieDNtZS5tbHgMAAAAZ2I1MG11 + bzUudTNoDAAAAG1pd3Z3anQ0Lmo0aQwAAABxY3JpbWFoby5jbnYMAAAAdWdlc3R5dzEudXBsDAAA + AHNqczJ1NGVwLmdlMwwAAAB6NWZqc2N3Yi41NWIMAAAAaGxmeDFncXMucTRqDAAAAG0zbnduMGUy + LmhscAwAAAB2cm9iendrMS50cG0MAAAAaGFyYXF2ZGYuZDBkDAAAAG16YTR0NXNnLnV1dgwAAAAw + aGh2cGpkNS55bXAMAAAAcHByanQxbWIuZ3RzDAAAADE0dnJkemEyLnhtcwwAAAAzbWltdnF1bi5o + dTAMAAAAa2NsbGdqdGUuY2I0DAAAAHN6eGdsYWlqLjJvdAwAAABubWg0bmg1MS4xbjAMAAAAZ2Zy + b3ZieGwucWJtDAAAAGUwbnBsbndqLnlzZQwAAABkYWhodXF2Mi4zb3IMAAAAcHhuMXQzemkuYWNn + DAAAAHl0MDBodGtrLnd0dwwAAABwend4NTIzMi5ocWcMAAAAbXJ1eWx6dHQua3BiDAAAADBiaWNz + eXFvLmJxZAwAAABndnpwbnZ4cC5xbGwMAAAAM3V6bDFmaXUucmYyDAAAAG9mZGptbnN2LnVodAwA + AAAyeWhndHVzei4xa2YMAAAAMXcwYnhkY24ucHgxDAAAADFwbWx3Ymt2Lml3MwwAAAB5ampoa3Fs + bi5pdWIMAAAAMHh3MW95bG8udHdlDAAAAGtteml4cTR3LnUzcAwAAAB0djEzd3F2eS55dWIMAAAA + b2EyZzNlanQucmlmDAAAAGViZXBnanc1Lm10cQwAAAAyZnkxMzAzZy5ueXUMAAAAMGM1dXR1bWYu + M3RzDAAAAGZuY3RrY2JnLmMwYwwAAABibmtzZXdzZy53em0MAAAAeXlpajEwMW8ucGlqDAAAAHA1 + anlkbHI0Lmh2MgwAAAAzaXBjZGF3dy5hcXIMAAAAMDRtdzV6MnMudW0wDAAAAHdjdHBua2ZoLjJ1 + bQwAAAByenBxc2JzMC41dGEMAAAAdmFoeHF6MGMuMnBtDAAAAHZyMHNza29yLm4ydwwAAAB4dDUw + MHUyYi5yaGsMAAAAY3ZpeTI0ZHguY2t6DAAAAHU0c3dkb2x4LnFqZwwAAABqc2V0emMwZS5qaGUM + AAAAaGI1NGIxdGkuM3F2DAAAAGVyNXFzcHZyLnUxMAwAAABibzRpMnNmdi53MnUMAAAAbXpwdnNu + dWIua2xoDAAAAGtrMG14djBmLnNsbgwAAABjemJlbGVqZy5xaXEMAAAANXhob2txNTQuY29qDAAA + AHVyaWhzbjR5LmVreAwAAAB2dGFtaWl2MC5sd2IMAAAAbHhhc3g1eTQuejMyDAAAAG12dnJ2czFu + LmRodQwAAAB5ejJxa2h3ZC50ZGUMAAAAeGwyYWd6dHYuMXNmDAAAAHZnNGNybm0yLjNjYgwAAABr + NTVmNWtwcS55cWIMAAAAa2RlbGI0bWkucWNtDAAAADN4NWxldGk0LmtkYgwAAABqd3FnYnVtYi5p + cnQMAAAAaGVkbHlpNXQud3FsDAAAAGZ0ZXRzM2tvLmhtbAwAAAByZ2MzdjN5cC4xY3AMAAAAZ3Bo + MzNqcGwudHoxDAAAADR1eDNzd2l5LjNhMgwAAABuY211d3V1MS41ZjAMAAAAaGhrYjBrdzAueWky + DAAAAHZobG1ha3VwLmhzaQwAAAAyd3dkdXFzdy50dzEMAAAAamJmZ3FxeDUudHoyDAAAAG80dWk0 + a2RyLnAybQwAAAB4aWd3ZHBxZS4zencMAAAAamIwemtsbDEuMmFoDAAAADB3eHBpZWlpLmVndAwA + AABuNDNudG81NS5ueWYMAAAAeW1ocjFxeDUuMW9yDAAAAGY0bGZ3b3hpLm50ZgwAAABuemZyYmJ2 + eC5weXkMAAAAeWhyNXZvaXouMnVvDAAAADN5NXAyZXp3Lm55YwwAAABuNXFnYWgxbS5vM28MAAAA + cDNzMWUwMWQua2pnDAAAAGVxZDFoa2NhLnkzbgwAAAB2YTN1Y251ay4yMXAMAAAAYWVrYTE1Z3Eu + cXFkDAAAAGNwdDNvNGZhLnhzdwwAAABsMXMyZ3Fhay52cWQMAAAAanJvM2hzcDMuMmYzDAAAAGJz + Z2FhdTBvLnBvawwAAABybHgxZGVoaC56eHoMAAAAdmZlNGlibmMuYjJyDAAAAG5paTFtc3YzLnBz + dQwAAAA1cWtkbnR5ci5xa3QMAAAAa2Yxa3Yxb3kuaGsyDAAAAHh1bmd3dWlqLnViMwwAAAB2Ymx3 + MndldC5rcm0MAAAAanFkZ29tNWEudmMxDAAAAHk1amtjbG4zLmxwNQwAAABqcW1xeWVkdy5naWEM + AAAAMW9qYjIwaWEudnRqDAAAAHRmaXZkdjIxLmF4MAwAAABwaWQwaHpwcy5kdjUMAAAAd2ZnY2Rx + NGYueG8yDAAAAGNicDA1eG0yLnM1MAwAAABhMjAxYXBodi4wZjQMAAAAZGwxMnl6bXIuZWJmDAAA + AHgwZXZ5dHFyLmEydwwAAABnZm91NHlrMS55NXQMAAAAdzJqZHZsMmIuZmJ3DAAAADJ4a3c0eHhy + LnVpawwAAABneHFsaWdsMi5scHMMAAAAanN5dXl1emguZGhyDAAAAGRkem5lMGpnLmV2NAwAAAB6 + d3pkdXBjcy5mMWMMAAAAbHZzYWFsYzEubWxqDAAAAHhheDBhZTVlLnpjeAwAAAByZmRncm4xZS5y + ZHYMAAAAc201MnV4bm0uYjMwDAAAADF2cWt5NWZhLm54ZwwAAAB5Y3lreGVnYy4zYmwMAAAAajNq + MnV5ZGIuZ3JmDAAAAGh6aHozNG1mLnB6NAwAAABhMHJzaWUxci5pcTUMAAAAMGp1cmoyMWkuNDAz + DAAAADAyM3c0YnJ4LjNzMAwAAAA0em95YjRzdy4zbXMMAAAAcGlvMnM1MHAueGprDAAAAHBpYWpi + bXpyLmgzcgwAAAA1ZDMxeW5ndS54a3IMAAAAZ2dlMGMwdWEucmswDAAAAGpvZHIxbHVjLmk0cAwA + AAAxcmNrZDN5NC5pbWoMAAAAeGxhbXhwZ3YuMWp0DAAAADJlMGszMWJwLm4xdAwAAAB1MW1sazF3 + NC52bjIMAAAAa3Y1YWhldmoudjBuDAAAAGMwdDVyMm9jLnI1cAwAAAB4d20wdGt2bS5xbHkMAAAA + dWpqcW9pM3IuamoyDAAAAG5sdHl0amd4LjN3YQwAAABoZmF4Mnhydi5yc3YMAAAAdmdyYnlxdXYu + cXQ0DAAAADFqc3d4YWh3Lnk1awwAAAAza3Ftb3d3di5ia24MAAAAZDFocWk1dmMuY20yDAAAADFx + MGRseGNpLmhjcgwAAABkemJsazRyai52ZHYMAAAAZ3loeDBwNXQuZGlzDAAAAGNsaWY1b3h2LnQw + bgwAAABwYm52dzJ2Yy5oMDUMAAAAaWUxajNldXoudmMyDAAAAGNqcnNjaWp3LmJzcAwAAAAxcGxt + bjN3ai5kZzIMAAAAd3BxeW15cWMuZXBvDAAAADNteGpyYTBhLjVudAwAAABhcGxhZTVocS5ibG0M + AAAAc3VjajQwcG8uMzRjDAAAAHpiY2twcDQzLjV1agwAAABhbG5sYjRlNS5ibnkMAAAAYWl3amdz + cWUuZW1mDAAAAGswbzFsbTUwLmNxYwwAAAA0cm1tbDVlYi5xZXAMAAAAYXBpbWdvdGYueXE0DAAA + AGF6b3Jwd2QwLmR3NQwAAAB5M2x0ZGkzYi5xZXMMAAAANHhvbHRmcDAuZDV0DAAAAGhocDI1d2Fp + LnFxMAwAAAB4Y21obGJ6NS5paXIMAAAAbnpqd3p6MGYudmprDAAAAHhyMTFmNHVuLjJidQwAAAB3 + ZGhqeHBuei5neG0MAAAAMnh5bGlsM2wuazF4DAAAAHZzMXZqd2cxLmdqMgwAAABrMHRzbjRmaC5v + a2wMAAAAZDFqb2N6MmQuaHljDAAAAHF2MmpucTVzLmx5ZAwAAABxZHpwNWRyby4xcXcMAAAAa2Zh + YmkzdHYuaXRmDAAAAHB5NG9xeWRiLjJ6MgwAAAAyNGV0dGMwdS53MGgMAAAAZGZkNDN6dHcubWly + DAAAAGF6Zno1eWk0Lm8zagwAAAAzdDV1d2Ruby5tdHoMAAAAb3lsZjF4aHguZ2RqDAAAADR5bnAw + dmFuLnpidQwAAAA1enF4bXZqcC4yNTUMAAAANXFnc3F0Y2QuMmpkDAAAADRuMm5kMGlvLm53ZAwA + AAAxMm1qNWlrdy4yY3MMAAAAY3ZvZnd1dmwucXhnDAAAADBobHU1ZnJ1LmRjcwwAAAB4NGpoNXBk + ci51bzUMAAAAcWRxNHdib24ucWFyDAAAAGhvMHBhbHF4LnNocgwAAABhMmJ0bWJ5YS5xZ2UMAAAA + bGk1b3NwamouMGxsDAAAAHpldGgyMTFkLjBoYwwAAABsY2Y0NXkybi52bjQMAAAAZXpvemI0M2su + YTR6DAAAAHR1ZHVoanlyLmdnbwwAAABuZHBqaXJneC5rbHUMAAAAMnBsbXVrdHIuYnB4DAAAAGhm + eGxnb3RjLmcxYwwAAAB2cGtiMTF5Zy5pMHEMAAAAcW4ybmpvMTMuZ21sDAAAAHJpY2o0eGs1LnBq + bQwAAABqZ2RuMmN5Zi4zYW4MAAAAZDB3aGk0djEuY2wwDAAAAHAxbGdncnVzLnB5bAwAAABqb3R3 + cW95ei5jZjUMAAAAM3p1cnZ3Y2oueWZnDAAAAGkxcGFkdnVuLm96bgwAAABhdGhucnJ6di5pdG8M + AAAAc2Nmc21zZzQuc2lsDAAAAGdxZGp0MXNtLnZ4bAwAAAAzMG1iaDNraS5rYm8MAAAAZzRoZnNo + YWwuY2JpDAAAAHZlbmptanFtLnRmegwAAABhNTVpdnQ0My5zcWoMAAAAbGY1cG14YXguYWJ6DAAA + AGdtb3cwcmI0Lm13egwAAAByM3Nlemh6ai5xZzIMAAAAMGN2NHh6dzUuaXU1DAAAAHlzMjMzZm52 + LmNscAwAAABzaDJuZ2Fvdi5lY3QMAAAAbXFudG4ybXEuend2DAAAAG8ydHFzM2NuLjBxcgwAAABy + cnF5ZWt6di5pcnQMAAAAcDVxMXkzdmQucDV5DAAAAGUzYzVtY29qLmExcAwAAABtNXNxd2Nkai5v + bHkMAAAAeW1uaG40bGguZ2lpDAAAAGZ0ZmJrbXlyLmoxMgwAAABoc3ozcWdoNC53MTMMAAAAZWN0 + Zm9paHMuenV1DAAAADVsbHl5b2dhLmp0cgwAAAB2cmd5Mnl0eC5kMzMMAAAANXA1YW1ja2wuam1s + DAAAAGdrZXpkZmNzLjAwdQwAAAB0MzF2eHViaS55cmIMAAAAZzJ1MzJrenQudGllDAAAAGEzdG9n + ZnBjLjJ4MAwAAABrYzM1cDF2bC4wMXYMAAAAaml0MW9zNXcuanVjDAAAAGVia3h2bXExLjJ0aQwA + AABqYnd6cXVvbC54cDAMAAAAaHJrM2JwaHYuaW5qDAAAAHkweWNjbTQxLnQxbAwAAAB3aW55a2Ft + Zy5rMjMMAAAAaGtpamsxNTMuZTRwDAAAAGd4ZHprY3phLm1zbgwAAAAzaWtwa2tteC5xZjIMAAAA + YnRoc2dnNXQubnl4DAAAAG50M21pdGJ0LmowNQwAAABwamdpNTBuMC41cWYMAAAAM25uZGNobWcu + eXZrDAAAADRhaXdwMWVhLjI1dAwAAABobXhjMmxqcC5ja3cMAAAAd2lveTF5bmIuZ3gxDAAAAGdj + dDNqbzEzLjJwMwwAAAB0cTB1MnZwbS4wdDMMAAAAb21ncW53dzEueTUxDAAAADIzcmVlbjI0Lngz + MgwAAAB6amVheWVzZy56dWsMAAAAZ2trd2x4MGYubnNvDAAAAHpzdWl2em1jLnRmMwwAAABvMmt4 + bXBicS50bXEMAAAAdHBhbzNsMmgucG9zDAAAADBmbXozdHNxLndzcQwAAAA0dDIxaDB0Yi56dDIM + AAAAZXp1anB2ZXkuaWs1DAAAAHNoY2RzeW9nLmRlMwwAAABpdmt3ZWxteC5kaHoMAAAAc2JvNHRj + eXcuNHV3DAAAAHJzbnpkbWExLmFlcwwAAABjYXd3YW5pbi5nYncMAAAAajJvNXdkcncuZ3VrDAAA + AGF5MHVodG9mLnN5ZQwAAAAwYnQ0d2l6bi4yaWwMAAAAeHFtamtvNTUueGZwDAAAADVvdnlydHpt + LmQxawwAAABsY3VoaDR3cC5ldzMMAAAAYWJ6cGhhMTEuM2tkDAAAAHZ2MWVkcnI0Lm1rcAwAAAB1 + aXEwajFrei5yNXcMAAAAeHFydWd2NG8uYWpkDAAAAHo0a3hibjVmLmJjcAwAAAB5ZGVzcGpjZy5p + ajUMAAAAb25yMHJvZGsubGN6DAAAAGoxd2Z3eGVhLnMyNAwAAAB0cDRtNXR0dC53bXgMAAAAcGpk + Y3Bzd3MuYWoyDAAAAGtrcXgza25qLmh2ZgwAAABwdHJubm5jeC41ZW8MAAAAc2I1MTJ5YmouM3Jj + DAAAAHExenBoamN2LmNpaQwAAABwdGNka2ZxYy55M2MMAAAAZGl5bmJjc2gueHR1DAAAAG8yYTFi + ZjVoLmJlMAwAAABwMDBhc2psci5rengMAAAAM3hwYnRmYXMub2R5DAAAAHNwZmZ3bHhwLjRtcQwA + AABjZGMxd25iay5sbWgMAAAAYjBvbm5ueTQueHkxDAAAAGJ0cXdrNWpmLnhjYgwAAABncTR4c3dx + dC54ZjIMAAAAeHNheHVzbmsua2pzDAAAAG9pYzE0azI1LnducwwAAABsdnpvdzRpMy5jNHYMAAAA + ankzbWtueGUuajJ0DAAAAGxnNXI1ZnFnLmJwNAwAAAAxZWFqZ2JsaS5tcGQMAAAAbzBydHh1Ymcu + MWdnDAAAAG1panliYXlrLjRtNAwAAAAxNW9wZjIydC56aW0MAAAAMGJlaDRta2QueWVrDAAAAHVj + c2pka3FxLmJpbAwAAABwbjRndzJwZC5nZXMMAAAAem92ajRqYjUuMXVhDAAAAGMyMjN6Y3JsLmlj + cgwAAABiamp0NWRhNC5heDMMAAAAMnl6a3Fvc3kuZ3Z5DAAAAGJrNGVwa2hrLnVhdQwAAABzbG40 + cmZxYS5jMnAMAAAAdnB4aXh1dnEuMmR0DAAAAGtpdDJndzFhLmMzdAwAAAB3ZWowcGhmbi4xa2sM + AAAAdHh1aGhxcGUuNDEwDAAAAHhzeHR3NGgyLmZjdwwAAAAzZm4ycmR0NC5qZmMMAAAAYmdpMnN0 + YTEuams1DAAAAGlxbmRvamJqLnA1YgwAAAB1cG4zYnh5bS53NTAMAAAAbmdkdDBybnIueGtzDAAA + AGN2M25tMjJlLmN3MQwAAABqZmZqeWE0bC41aWoMAAAAcmJhbXB0NGkub3JrDAAAAHdveTFvZ3N0 + LmIyMAwAAABicHcyNHN6dy50am0MAAAAd3pmams0bDIuc2l0DAAAAHYxcXRtZzFlLnV0cwwAAABy + ajJjcWRycC5taDQMAAAAMGU0dWRxd3cucG9qDAAAAG5lazV6c25yLjB0MAwAAAA1am9zZG5oZi5n + dmYMAAAAbXd6aXA0MWkuaTQ1DAAAAGlqZmsxc2l0LjR3eQwAAAAxbXZ1eDFzcS55cHEMAAAAZnpi + Z2JocDUueW1xDAAAAHVpMTFkenFuLnR0bAwAAABqMTBiMDNsaS54NGMMAAAAMXJ4MHFuaXQueW96 + DAAAADJzc2puMWF2LnptbAwAAAA0bWMxMzR4dy5yNGcMAAAAaXRlaTVxa3oudXZiDAAAAHIxMWlk + ZW5sLjBycwwAAABzaWoxMDU1eC50eGsMAAAAamIxMTJkYnQuY3Z2DAAAAGIwd2tncGFuLm5xawwA + AAAzNXBlamIzZC5mZDUMAAAAMm5oeHB4MmQudDNlDAAAADFkbnhrbzRxLmRhdgwAAABhdzB5cWZw + by4xbTIMAAAAb2U1MnN0cXguMnJsDAAAAHBubGhjd2t6Lmt4MwwAAAB4bGdvNHgxdy5odXUMAAAA + bzRrNHJvNW0uMmdiDAAAAGF1azJ3dHhnLmVmMAwAAAB3ZzBkYWwzZy50bXIMAAAAa2p4MGVyb2Eu + cGYwDAAAADJnNHlwdHVlLjMzegwAAABoMjNpeXJlZS5qaWoMAAAAaGR0dzNsZWouaHdyDAAAAG5z + Y3JjdXkyLjFkbgwAAABrY2ZudjJzcS5qMGUMAAAAMjJxMHB3MmwuNWZsDAAAAHhoZWd5d3Z6Lncx + YwwAAAByMnhzaTVtaC5wbzEMAAAAcHp2dTV5bXYudXh3DAAAADVxZGRrYmJiLnFnbgwAAAAzZnM0 + ZDBnMS5qeHcMAAAAZW9meW9ueDUudHpoDAAAAHd2djRwcW0xLmV4dAwAAABweXZudXJ0ZC4zZGMM + AAAAaXhlNGF0czQudHEzDAAAADFycjMxNGcyLmQyeQwAAAA1YmRzeTR1cy4yMmQMAAAAamxiMGJ0 + enIubGt3DAAAADR1MGhiYWQzLnhyNQwAAAB2dmdrbDJjby4yeXQMAAAAa2c1anNqNXIubG96DAAA + AGkyaDNoZ3NhLnhkMwwAAABudnVkMTNicC5iNTQMAAAAYnAza21yd3AuNHUzDAAAAHd3MGFzc3l4 + Lmp6MQwAAABvaGJ1dXNwdS5ha3cMAAAAcmNpNHpxemQuNHNmDAAAAGZ1b2pmcTQwLmZ5dAwAAABt + YXBiazJpdS5jNHEMAAAAanUxdm8wbG8ubHF5DAAAAG1hMHNxZXRqLnF4cgwAAABxbnd1dGx6YS5n + eXkMAAAAamtybnJkdTMucW5vDAAAAGF2NHNsZ3cyLm5qNQwAAAB4a2xpamN2ai4zcjEMAAAAc3cx + YnZyMHIucWN3DAAAAHZydnI0amFwLnJkMwwAAAAzM2pqYXBhcS5xbGMMAAAAczFwZ3psaHgueXRw + DAAAAHBseDN3aWh0Lnp5bwwAAABwY2llMGp5Zi4ydGEMAAAAd3NocmV0dGYubzAyDAAAAHNyZXZ3 + eGN4LmY0dwwAAAAyZjNleW4yeC5nc2MMAAAAZXF3MGFsZnUud2JrDAAAADBpdDFtZnhzLmpxMAwA + AABpbHl4dXR4ei5tNXoMAAAANHJobG9pcjAuaTAzDAAAADJ2b2NmZzNtLnhycwwAAABkd295eWll + aC5wZWMMAAAANWIycGk0NWEuZGk1DAAAAHlkbWRrMWJwLmtlaQwAAABqaWRjNW5paC41enEMAAAA + MDJnYjJ6aXQuM3VtDAAAAHE1ZmFjM2p6LnczaQwAAABnZmswc2JjMy5wYWsMAAAAd3Nnd3B0d2Iu + bG8xDAAAAGRtd3FycXpvLmthdQwAAAB5ZWVrbGp3YS5oZWwMAAAAdHpoNHN2dTIuaHp6DAAAAHBj + bXhrMWZuLjRseQwAAABjMWt1M3p2bS5hMXAMAAAAa2owMDExNWUudXZnDAAAAGJuNHN5cWdrLjBj + MgwAAAAyb21sNWJ2NS4zdGsMAAAAdzB5eHBjd3cubWwwDAAAAGQxZmNqYmsxLnFseAwAAAAzcmhv + M3Rkdy51MnoMAAAAb2FrdGoyZGMuZjVuDAAAAHoyaTF4MTIxLmY0eQwAAABra2lldXZ0NC5zY3gM + AAAAeHJweXVia3kub2NwDAAAADVieXR0Z29oLmRtMgwAAABkYXYzYmpvdi5waTIMAAAAb3NoaWh4 + ZG8ueTFwDAAAAG0wYnJramU0LngwagwAAAB4ZHU1ZXg0cS5memUMAAAAeGVnNDBib2QudWp3DAAA + AHBnMXYzczJiLjN0egwAAABuc2FqdWY0ci52dGcMAAAAY3FrdWtzbHIuMjJwDAAAAGZ2dmh3aWs0 + LjF0NAwAAABkanRudmJwdC5seHQMAAAAa3Nkdm1wMzEuenNzDAAAAGF3cHczZGpiLjBnZAwAAABw + b21kYzF0cS52amgMAAAAZHJqZm9pbnUuejQzDAAAAGYyc2NpaHI0LjJubQwAAABweWR1bGNpYi56 + YzQMAAAAMDF3d3llNGcucGZzDAAAAGNxd2ZnaG11LnYydwwAAAB5anphNGJrbC5ocWcMAAAAbG5q + MmpyNW0udGJtDAAAAHl2MG9tcWl6LngxdAwAAABzYXNueWEyZC40d28MAAAAem5iejRoYmQubHoz + DAAAAHZ6MzFuYXNzLjM1cgwAAAAxc2I0bnlsZy5yejMMAAAAYTQzemVkaW4uMXYyDAAAAGV5YTUw + cnZmLmg1YQwAAABkMXV4YnFkMy53bjQMAAAAMHRsNTU0bWYuZnMxDAAAAHlmendwNHlxLnp5bAwA + AAAwYXNiZHJuci5yYXcMAAAAbjNqeXZrdnAuZ3doDAAAAHJja3A1c2ljLm1mawwAAABrZWVmcG1n + Yy50dGcMAAAAcXAwZXlrdDMucTRxDAAAAHowc3UwZ3c0LmxwaAwAAABkNWZ4cXpldS5ua2kMAAAA + bTVraGpscHcuZzMxDAAAAHRjMGtqeXF1LnV5ZQwAAABhaG5ncmlvdS56bWUMAAAAaGVxa2R1bHUu + dHE0DAAAAHlwZHZ3MXRtLnN0dQwAAAB2ZHc0NG4yMC5lcHkMAAAAbGN6aTQ1MnAuaWEyDAAAAGEw + cmY1azRwLnQwcwwAAABhcWg0YWc0bC5uZ2MMAAAAZWNwdWE1cWkubWd0DAAAADV3b25lcTUyLnJn + dwwAAAB3NW9rNWp2ZS5xbHcMAAAAMnpjcWJrZmEubGVvDAAAAGR1eXpvNXVlLjNuYwwAAABqNG9n + MnlzdS5sd2kMAAAAZGttcWp6ZTMuYjQyDAAAAGVmZ2FvcmRxLnhyeQwAAAA0bzNhY3B0ZC41c3EM + AAAAa2J5cHJpMm8ubGJnDAAAAGtxZ253ZXJ4LnB3dwwAAAB6dXRnenA1bi52enUMAAAAZHZycHZ5 + M3EuejJzDAAAAHNidjFqcGh3LmdyYwwAAAB6ZDFoaDFsdy5wZGwMAAAAYW1veWtvZGkuNW9nDAAA + AG1uMWkzYjMzLmF5YQwAAAB2cHllbGFvci52M3IMAAAAeWpibmgwcGouMzF2DAAAADMwcndocHBs + Lmt1NQwAAABrdWJwcWxvYi53MXkMAAAAazNsZm9pbWEudGtmDAAAADNleGlsbXB2Lmp6aQwAAABs + YWF1bW1nby51em0MAAAAMHIwcTV0bHkud2ZwDAAAADN4YTBxZ2x5LmljcgwAAAA1NHBhMnBtdy5y + amkMAAAAYW9nZWs1dzEudzMzDAAAADNvZ2t3cWVvLmhpaQwAAABpZmxlaTFuMS5idGsMAAAAYmxk + d2R0b3Uudmk0DAAAAGFiMXNhdGo0Lm1xdQwAAABkd2ViZGwwbC5tcjIMAAAAYTRxZG94ZWsuajMx + DAAAAGszMHA1c2NuLnRsMwwAAAB1MHoxMHloby5pbXcMAAAAY3lrampkMWMuNGd5DAAAADVqM2wx + MHEwLnlmcgwAAABhdXF6cmp1aC5ld2QMAAAAemdubGx6bnUuc3FvDAAAAGI1ZjNmcWRpLjB5NQwA + AABzeWpobG9pby41YnMMAAAAcDVucm4weHkuMmkwDAAAAHVkeGxjdmdtLmpnagwAAAAzZmMwZXdi + bS5lYXUMAAAAejFkMHVvdDAudnNqDAAAADIzeTNzZnFjLmZnZAwAAABxMnRmYjB2ay5uMmQMAAAA + a2xieXcwczUuZ2ozDAAAADN0bWhjaHExLjFxdQwAAABjZXU1M2o1dy5rcXYMAAAAbWRjcGVld2Iu + NXhxDAAAAHl6MmFpd3k1Lm9scAwAAABidHZycTFiZy5jeXIMAAAAeXlhbGJ1Y3MuYW5nDAAAAHAz + eHRvcDFpLnFlZwwAAAB3ZXdrM2dmZC5uaW0MAAAAZm1qb2d4b2cuNTU0DAAAAGVydTJsbmowLnN1 + dAwAAAB6bG5xa3hnYS53MHIMAAAAZXgxeDB1MXUuYnpuDAAAAHZmeGJidWFkLm5tNQwAAABidmo1 + eWxwZC53ZnYMAAAAZW5rY3FzNTUudGx0DAAAAHdsZzBxcWh2LnNyZwwAAABvZWVrcjJ0eC51aXkM + AAAAdmh0aTB3cXAudWYxDAAAADV0cXh0enYzLnk0cgwAAAB4ZXdlbGRrdi56YXEMAAAAamJ4YzB3 + dWkuMWlkDAAAAG9rdXB6MnN2LmhmaAwAAAB1MWJ5eDFlbi5taXIMAAAAaGhwejQyeHQuZ3F4DAAA + ADBxbDMzZXk0LmMwagwAAAA1bTVsbjVsbi4wdTIMAAAAcnN0a2JxdWwudWQyDAAAAG94MDQ1azFv + LmdtbwwAAAB0dWRrcW0wdS50dmwMAAAAY2ZjMWlvam8uNGluDAAAAGozcGM1c20wLm1sYwwAAABp + c2Q0MGpzdC50ZmcMAAAAazM0ZHdjd2IuejNtDAAAAHZleDV1c2RvLm1nYQwAAAB5ZWpnb2d4by55 + bnAMAAAAdjRvbjB1bGwucHlmDAAAAHB3MmUwbHpzLjVnawwAAAB2enEzMW94Yi50djMMAAAAeHFz + MGthZ3QueTV4DAAAAGhyYmlrNGllLnNndgwAAABjZWtsNDBzaS5ycnkMAAAAMDV0Y3h0MmwucXo1 + DAAAAHF4bHZnczFiLnVjbAwAAABnMndsNDBrMS5qeTIMAAAAdWExcnIxZGwudWVlDAAAAHFzdWdu + eXZmLnhycQwAAAB6bXoxd3V0dC40bzAMAAAAYTJuajNxZ3kuajR6DAAAADUxeW01YmhxLmVybAwA + AABpMXJsMnBlYi5odmoMAAAAcWJyanptcnUubWZqDAAAAHljNWdrZ3lsLm1wdAwAAABkZDV3dGh5 + aS5xeGcMAAAAa3dlZHV2cG4uZnRhDAAAAGFqZDNkdjBoLmtqYwwAAABocGdudG5qaC56dHIMAAAA + eDRmYWF5b24uemd6DAAAAGRleDR4YjVsLnJtbQwAAAA1NWZvcXJybC4ybXUMAAAAd2lrdXB4b2ou + c2V1DAAAAHVkYWxnenR0LmMzbwwAAAA0czJ6aG15cC4waTEMAAAAMHB4MWRpY2wucWd3DAAAAHVx + YTF4bGRxLnQydgwAAAB1MXF1aHRzdi5xdXUMAAAAMnMycmJmdm8uanZpDAAAAGQ0bDQwbGJxLjUw + ZgwAAAB4YTNsajR3Yi5udHYMAAAAam9jZnc1dmQubG5tDAAAAHowYmNsa2R1LmNwawwAAAB3MGpv + Z3BzMS5hNXUMAAAAMDM0bDBvaDEuNWh2DAAAADNzY3Vzd2JzLnl3aQwAAABidXp6MmpuMi52MzUM + AAAAa2V0c2IyeHQuaXgzDAAAAG01a3RycmtsLmJmNQwAAABkeXVqMXRydC5rdXgMAAAAYzExcG9l + MDMuaHJjDAAAAGJvd2lyZDQzLmI0YgwAAAB6M2E1eDR6dS41em8MAAAANWw1MWswdGsueGRsDAAA + AGZzNXgyYWxuLmpkZwwAAABpcno1aHAxcC54dzEMAAAANDRobGZsdjQub2lpDAAAAHVzMzMyMDJy + Lm1tbQwAAAAwZGV2aGIwMC5lbm8MAAAAeWdva2FscHQubXpuDAAAAGx5ZmNscmh3LnJ0NAwAAABk + a3hrY2l1ai4zZnAMAAAAemtkbHNwcjEuaHQyDAAAAGE0aDNvMmFyLnBzNQwAAABxd2YwM2lxZC5o + ZmUMAAAAanl0cHZ2YWEudWYwDAAAAGFvdno1ZjRhLmlhMAwAAABjdjFlMnhvdS4xbngMAAAAbGFs + bzVncmoueWV6DAAAAHgzanRjbzRjLjJsaAwAAABycDR0c3ZibS5oa2kMAAAAeTB2MjM1eG4uMG5m + DAAAAG56eDR2MXBpLmNlMAwAAABocWFleXd2by5zazAMAAAAcXMwYmRudjEuNDVjDAAAAGhpM3p5 + cjFsLmlidgwAAAB6YzJoM28xdy5iMnUMAAAAZ2F5eXo1dDUuNWNlDAAAAGZhZXEwdTNrLmZndQwA + AABtcmZwZ3FzdS5ldm4MAAAAY2hlbTRsb3kuZnMyDAAAAGlyc2xnb2hkLjVibgwAAAB2YWR0YXNs + aC5oeGIMAAAAZnhpMmwyeXAuNGdhDAAAAGd1aHFibjExLnVyagwAAABmcTJ5bmZiMS5tb3IMAAAA + Zm50aWR4dHEudDJjDAAAAHNxenZhcnQ1LnlmZgwAAABnbDEyZ2ZxMy5nZWYMAAAAcWNtYmpha2cu + cGc0DAAAAG4wanFyaDNjLnBtdQwAAABpNGdmdmN0Zy5sa3gMAAAAeW1vNXlsengudmt3DAAAAHZ1 + bWFocGV0LmVqMAwAAABza254ZXVhby41eG0MAAAAdHF5bmFoaGcudW8zDAAAAG4zMm00aGVkLnRt + cgwAAAAwcHVpbjRwdy54NHAMAAAAbGgxZTBjM3QuamNlDAAAADBjeXBuZGVwLjNrdwwAAABrdWg0 + NGp3aC53c3IMAAAAb3UzNDFwd2sud2lxDAAAAHBobWZtZ3dkLmlicAwAAABhc2szdXNzcy56YjUM + AAAAaHgwYzFnZmIudXQzDAAAAGFxaWloMGxlLnYyawwAAABleHVlaWVmZi5sc3gMAAAAa2pmMG9u + bmIueTNiDAAAADJ5dG1vZHpwLnMyZQwAAAB3NHczZjUyai5vaGEMAAAAajJuamJtZHEuMTRhDAAA + AG1xenExcGptLnM1NAwAAAA1ZjBvb2h4My4xamsMAAAAaWJxcjUwanAudmVnDAAAADFsM3phZ3F4 + Lm80cQwAAABueGN4MzBpbS4wdDAMAAAAb3ZkYmVnZGcuMWRmDAAAADR3MTJncHAzLmRycwwAAABx + MnlkYjJtci4xNGQMAAAANWZyZHJqNG4udmduDAAAAGtua3B5MGtvLjFucAwAAAA0aW54a3YzZC54 + eWgMAAAAYm1ucnBscWcuMHdxDAAAAHh5Z2U0ZDM0LjQ1eQwAAAAzbGN1aGZpcS4yYWYMAAAAeGtp + NXYxMGguZHkzDAAAADA0bWJzeWJzLnAzdQwAAAAzZXlpYjNqMi5sZ2sMAAAAeHlxZXE1ejMubTRh + DAAAAGtqcG9ud3hqLnNjYwwAAAA1a3EyYm0wby52azEMAAAAcnNjc21uNWkudzFuDAAAAHptNWtp + Y3JyLjV4ZgwAAAB3dGVvdHcxci54dW0MAAAAcXZkMDIzemguYmNwDAAAAHlranlrY3F4LnJqMAwA + AABqZHQxYnV0Zy41d2UMAAAAbW53ZjJnbXUuM3hxDAAAAG1nb2VrdTNhLnl3ZAwAAAA0bnAwdGdo + NS5ybWoMAAAANHF2c3JndnIudnBqDAAAAHhjZGN6cnl4LmZhcgwAAAA0azEwdnV6by56d3cMAAAA + b3NhZHYyeWouc2RnDAAAAGx4c2VsYXF2LjJjYwwAAAB2dGkyMDE0di4zY3YMAAAAaGNhMGx3cjMu + eGp0DAAAAGJqbnIxMHN6LnM1eQwAAABzcjVvZ25jNS5ocHMMAAAAYTJqaHRxeWIuczVjDAAAAGtm + ZG92aXptLmljdwwAAABvZDMzNDVvMS41MXoMAAAAY2VzM24zdjIudm53DAAAAHZycDBncG1mLnky + YQwAAAB2MDFmYWJsYi41djUMAAAAanIwZnRoYWYuNWJ1DAAAAG4xdnYxdHN1LjFpbAwAAABnZjFi + aDV6by5iNWkMAAAAY25sNHhpM3Uuc2NkDAAAAHMxaGpub2t0Lmx3agwAAABqbmE1em0wYy5hb3gM + AAAAY2phenp1bXguNXE0DAAAADVvaW81bWN4LnoxMQwAAABrbm41cW1ueS5kbDAMAAAAbTNkd3Jx + MmEuMnJ2DAAAAGJ3YmlmM20zLm94YgwAAAB0aXdpb3VsaS4yMmMMAAAAMXU1cjFuYXoueWhjDAAA + AG52MGgxNHRzLnBpeQwAAAB3cnNzY2htcy5obWEMAAAANXF4MG81MmIuZnlwDAAAAGJuNHJ6aXNy + LjV5cwwAAAB1cmZvMmJxYi51Y3cMAAAAc3ZlZ3Rpb2UuaWNzDAAAAGZ6aWpmcGpsLmMwagwAAABn + M3lwdTJobS5qanQMAAAAd2llaG1mejIuMTJkDAAAAGQ1eXViM3NuLmRoagwAAAAyZnZ3eGlsdi5p + d2gMAAAAdTV4NWtwMXguenJlDAAAADEyc3Q0MDVnLmJ4dQwAAABucWZtMWJvZS51ZG4MAAAAdGxh + czJ6Z2QuZWswDAAAAG0xdmhyMWl6LnhucgwAAAB6cHpuNHczeC5uM20MAAAAYnNqbDBudmkuaW5o + DAAAADJ0amlwd2J6LjR5NQwAAABnZ3BrZGxvdy5vd2QMAAAAZHpoM2NmYXguNWZmDAAAAGlnM2x0 + ZWdkLjVpNQwAAAA1eTBnZWszdS5pMm4MAAAAa2JiZGEza3MubWl0DAAAAG1mbzF0amV4LjR5bAwA + AABlNXFpNXppYS5sMXgMAAAAeTRjNHZsM3EuMnF6DAAAAGRhZHhtMjN4Lmx4cQwAAAB6amlqZGV2 + cS55bmEMAAAAM290ZXByancubW93DAAAAGQ1NXA0b3BjLng1aAwAAAB4bGE0NGYxaS5jbmIMAAAA + NTFiNWZndXkuaDB4DAAAAGdsb2RnM2lmLmlyMwwAAAAwZGR2anNhZS5vdWYMAAAAZG5qd25lcnYu + ZGZ4DAAAADRoYXA1c3ZsLmowMQwAAAB2a3JsbHFndS5zemcMAAAAMTEyYnFwcWYuaWMzDAAAAGtw + NHhyeWdmLm9tawwAAAB1dWx6bmFwdS4yaGQMAAAAb2V6cmgwc2kuajJ4DAAAAHNudnF3aGkxLml3 + aAwAAAB6aWZsa24zcC5sMGoMAAAANGJ5ZnhkMDUucGJxDAAAAGRsc2Fpb2FzLmhzMwwAAAAweGZh + dDNxei5vYWkVABWO+gEVjvoBLBXQDxUAFQYVBhwYDHp6cTBrZnk0LnZibhgMMDF3d3llNGcucGZz + FgAW0A8YDHp6cTBrZnk0LnZibhgMMDF3d3llNGcucGZzAAAAAwAAANAPAQwAAABtZGlmanQ1NS5l + YTMMAAAANWRtdnFldmcuamswDAAAAHNmdGdtZ3N4LmIxZAwAAAB6cm9xdnM1dC5samkMAAAAYW8z + amF0bmMuMXZoDAAAAHUzYmZ1dmRsLjF3cgwAAABqcWN3M2VyMy5sdDIMAAAAc2gxc3doZXQuYncz + DAAAAGkwc3EzMDVvLmg1dQwAAAB1NTNjZWxhMC5zZ2IMAAAAemZybTVobHEud3J1DAAAAGN6Y2Nr + a3QyLnJpMAwAAABxMG40NTJlNC51bnkMAAAAanVvenVtYWEudmZ2DAAAADFtdGZvMTNtLnhlaQwA + AABjd3RhZWQyci5xZHcMAAAAM215czB5a2YuYWdqDAAAAHZlYXVpbTNtLjNhMwwAAAB1NHh1cWZx + ci5ubXEMAAAAbHd1aG5kbTAud2pmDAAAAGtqdXkycm50LnVqdAwAAABxeGNpd3JpMS5seDEMAAAA + bHBlYnRqNXcuZmMwDAAAAHp0aWoxcWNiLml5MwwAAAAzbXdyZXpwMi5xaTAMAAAAYXoyamF3M2Eu + Y2RmDAAAAHBjanpvdzF1Lm0wMAwAAAAzZHlxdmg0MS5wYWMMAAAAMGFqY3lkcHMuYTRkDAAAAGI1 + MnJtY2htLnNoZQwAAABwczBzZGZzei5lcmMMAAAAZjUxdDNkaGIuanZjDAAAADV6cmhzYnpqLjF4 + YgwAAABqMmxtZnpzMi5xZmIMAAAAcjBlcngxaXQuaXRyDAAAAGpiMGRzdTAxLnBlbwwAAAAzd2ow + ZGsybi5hczIMAAAAem5iemhnaXAuY2xxDAAAAG5xYmJwcHJ1LmZncQwAAABncDF4emYxZy4zeGQM + AAAAcm95ZG9udWsuYjJqDAAAAGVlZ2czY3FzLml0eAwAAABtNHYxd29sdC40bGgMAAAAcHV4MHp5 + ZGMubHZsDAAAAGRiZGZtc3IyLmlrNAwAAAB1cXQ1c2EzaS5hbmsMAAAANWpjaWpoMWcua2dtDAAA + AHIwbm50eTRwLnFlMAwAAAA0eGMxcGMzai5vemYMAAAAZDN4dzNoZ2EuYWZkDAAAAHZlMHVtZnl5 + Lms1agwAAABhcHljZ2h1aC5hbHIMAAAAY3l6Z2twaDQuM2ljDAAAAGJjZTJ5dmNxLmhhbQwAAABv + eGxhdGdudy5hdG8MAAAAdGpnb2tzZTIudTRzDAAAAGt1MWw1NDVkLnB3ZgwAAAB1Y2VhYmxjcS5o + dnUMAAAAc2x3dXZjaXkucXlmDAAAAG9seWMwcml2LmhuYgwAAAB3cmN6bXEwbC5yZ3cMAAAAc3F3 + aTVla3UuZnl6DAAAAHdua2VzY25rLm5kbwwAAABoajRzbDVqMS5mdXkMAAAAczR4bmJoMmMudGgw + DAAAADVobHZvZ2l3LndtMQwAAABjcTBuNDVwei5mc3AMAAAAemYydndqaXIuZXVxDAAAADVqeHZk + NTMwLnp2NQwAAABqc2N2b3ljYy5xcWcMAAAAbHNqbnp2ZmIua3J3DAAAADRwYWliaHoxLnYxcAwA + AAB1cmkwMmFjMy5zYnkMAAAAbWc1cXdiMXEudGVqDAAAAG5sYmd5b2k1LmZkZwwAAABrM3ZiMW1v + by5xYWsMAAAAdmN5Z3FzcWUudXZiDAAAAGRobWFheWc1LnNrYQwAAAB0dW9sZ3lobS5seGQMAAAA + cW1mdXJrMWcucmNnDAAAAHMyZmdlMDAzLmNkMQwAAABpM25sY256dy4wNGwMAAAAc2UxNHJmeWwu + cG1zDAAAAHR0eW9kc251LjQ1ZQwAAABtcmQxamJ0Zy5uZjEMAAAAeWNtcG5ldzQueTFnDAAAAHd6 + dmF6cHZqLmFoeAwAAAA1bXVyNGt2ei5mZWoMAAAAM2NoYnN6dmYubXl2DAAAAHBldGsyZzVxLmxn + ZwwAAAA1bTU0Zmdnby5rdjUMAAAAeXptczVvMHMuNTN6DAAAADB4NTRsZHN5LmdxdgwAAABnZWlz + emdhMS53ZnIMAAAAamExY2xhdHcuNWNpDAAAAG9ydHVzdnlwLnp1dwwAAAAyYTJueHNxbS5hdHIM + AAAAeW5sNXR0eWgubTVsDAAAAG5xY2k0bjUxLjM0dAwAAABrMjRraXpsZC50aXQMAAAAcHBwZmNw + MmQuenRxDAAAAGtnbGl5ZXN0LmFmdgwAAAAzbGFlb25nbi5qenoMAAAAaDA1djA1YnQuc253DAAA + AGVrZGp0Y3U1LjNicAwAAAA0dmp3eTJhei5kc3cMAAAAYzR3MjF6ZXAuYWNzDAAAAG1hZmtrdGh1 + LjN5dAwAAABqaDV2ZGx6eC54aGIMAAAAanYzZ2lhMDAuemFxDAAAAGxucjAxemRkLmh0eAwAAABt + bmNkZjRudS5idnQMAAAAY3l1ajNjcjUuYmVhDAAAAGt2cG5kem94Lm1vbQwAAAAyZjB0c2Vuby5t + NWkMAAAAcTJvbGRtbDQuZHlyDAAAAHFqMTBqY3BjLmhrdwwAAABjMXZ3bWtvYi56azUMAAAAdWRt + NGFiMXMuM3FtDAAAAGtxZ2I1ZndsLnV6MwwAAABla21uYjBoZC55c3IMAAAAYWdqYnNrbnIuMmd5 + DAAAAGZwNGRqamxsLm1meQwAAABibzVkZW1oeC5taHcMAAAAcnppZ29ldWkuYnhkDAAAAHhhZmUw + aWlrLnQ1ZQwAAABybXZreHN6ZS5id2EMAAAAaHRxNWZndm8uaGdlDAAAAGczeXBicGprLnY0ZQwA + AABtbXYwb3lieC5rM2cMAAAAZGhqMGIxY3kudm5tDAAAAGJoYm5kZGRjLnp1cgwAAABid2NicDQx + ZC55dG4MAAAAZGhoZ2d0dGkuMWhrDAAAAHFwa3J2MW40LmlvcAwAAABnMGNsdDUxbS5wYnEMAAAA + bnhsbGRhYW8ua2RwDAAAADBucTV0Y3J3LmpldAwAAAAzNDAzbW9tai5nbGgMAAAAcG1kNHp6aGsu + eXJzDAAAAGYxcmMwNGp0LjFrbAwAAAA0dXhmc2loaS5tMHUMAAAAZWx6Z2t4dmoucmplDAAAAGxr + dmY1b3gyLmpqMAwAAABhejIyNG1qci5zZ24MAAAAemYwemFwdW0udnZjDAAAAGNjZnBqMG95LjRp + ZgwAAABtazB4dXZ5MS5pMjEMAAAAMjRmbjJ6eHIudGtqDAAAAG96eWZ1b3JuLjFybgwAAABhdnN3 + dTF2Zy5vYXMMAAAAcmNtaHhvczMucnptDAAAAGhyajVmZ3NnLjM1MQwAAAB0eWlibmV5bC54aHQM + AAAANXIzZHV6b2cuamlnDAAAAHBuMXJ5ZWFnLmV1bAwAAAB6MmFsbXJ6ZS5tdHkMAAAAenpxMGtm + eTQudmJuDAAAAHJ0cTBkZG9nLjV1ZwwAAAB3ZXRlc2hteS5kYW0MAAAAZWc0M2tvMG8uamhnDAAA + AHNxaGdhaW1wLnQ0YgwAAAB6cDRtdmh1Yy5xbW0MAAAAM2dnd3F3aHYuZ3MzDAAAAHd1emNxb3Z4 + LmZqMgwAAAAxbDFtNDFiai5nZHcMAAAAdnFib3FrcHQuMzJ2DAAAAGU1bTR0MmVxLnhsNAwAAABm + MXhtMTN6eS5langMAAAAMXNlcTVjaG0ub3BoDAAAAHgzYmt3Z3JyLjViYQwAAAA1MXNqeWNncy51 + bWgMAAAAMHNrdmJvanEueTBoDAAAAHo0anJ5YmYwLmVvbAwAAABxaXNmbDRsci5iZXEMAAAAb2xm + Z2RhYnoud3djDAAAAGFnem1oeHV1LmN3aAwAAABiNXB4bTR2dy5yamIMAAAAbTBzb28xanYubG5x + DAAAAHJ4dWJ2dmdwLnhnZgwAAAB0MzJuM3huZS5kZWgMAAAAdWZvMG1sNWsuanphDAAAAGJqZmQ0 + cWNvLjRtZAwAAABkdnJmZW0ycC51bGgMAAAAdGJ6Z2loM3YudHQ1DAAAAGlmeTJlcHVrLnNxNQwA + AABmYWlsMzVieS5ycTMMAAAAbTVlZ24yZmsuYWllDAAAADBsaGlrbHFrLm9iegwAAABsb3h0eHlv + dS4wMWcMAAAAbXYzcm5lZW8ucmljDAAAAHI0cnpyeWkyLnF3NQwAAABxcmJsMDVxei4wNWUMAAAA + YXcycHJqYmEubTNhDAAAAGJoZ3l2aXZqLmNiMwwAAABkbHhlcTVjMC5vcnYMAAAAbjN2MDRyaHAu + YWV4DAAAAGQxcXZ1ZmltLnBidwwAAABveWVyanp2dS5wZm8MAAAAbnVheGtib3YucXB1DAAAAGtk + eWRhcWlyLndjcgwAAAB3YTM0Y3VrMy5iZGcMAAAAZTVuMWl4anoud3JrDAAAADJycmk0MXBqLmV2 + cgwAAABoeHJqNHJzZS54Y20MAAAAdzQxanFwemMueDF4DAAAAGJqbTJhdTNyLnR5eQwAAAB5eTFi + eDNtZS5tbHgMAAAAZ2I1MG11bzUudTNoDAAAAG1pd3Z3anQ0Lmo0aQwAAABxY3JpbWFoby5jbnYM + AAAAdWdlc3R5dzEudXBsDAAAAHNqczJ1NGVwLmdlMwwAAAB6NWZqc2N3Yi41NWIMAAAAaGxmeDFn + cXMucTRqDAAAAG0zbnduMGUyLmhscAwAAAB2cm9iendrMS50cG0MAAAAaGFyYXF2ZGYuZDBkDAAA + AG16YTR0NXNnLnV1dgwAAAAwaGh2cGpkNS55bXAMAAAAcHByanQxbWIuZ3RzDAAAADE0dnJkemEy + LnhtcwwAAAAzbWltdnF1bi5odTAMAAAAa2NsbGdqdGUuY2I0DAAAAHN6eGdsYWlqLjJvdAwAAABu + bWg0bmg1MS4xbjAMAAAAZ2Zyb3ZieGwucWJtDAAAAGUwbnBsbndqLnlzZQwAAABkYWhodXF2Mi4z + b3IMAAAAcHhuMXQzemkuYWNnDAAAAHl0MDBodGtrLnd0dwwAAABwend4NTIzMi5ocWcMAAAAbXJ1 + eWx6dHQua3BiDAAAADBiaWNzeXFvLmJxZAwAAABndnpwbnZ4cC5xbGwMAAAAM3V6bDFmaXUucmYy + DAAAAG9mZGptbnN2LnVodAwAAAAyeWhndHVzei4xa2YMAAAAMXcwYnhkY24ucHgxDAAAADFwbWx3 + Ymt2Lml3MwwAAAB5ampoa3Fsbi5pdWIMAAAAMHh3MW95bG8udHdlDAAAAGtteml4cTR3LnUzcAwA + AAB0djEzd3F2eS55dWIMAAAAb2EyZzNlanQucmlmDAAAAGViZXBnanc1Lm10cQwAAAAyZnkxMzAz + Zy5ueXUMAAAAMGM1dXR1bWYuM3RzDAAAAGZuY3RrY2JnLmMwYwwAAABibmtzZXdzZy53em0MAAAA + eXlpajEwMW8ucGlqDAAAAHA1anlkbHI0Lmh2MgwAAAAzaXBjZGF3dy5hcXIMAAAAMDRtdzV6MnMu + dW0wDAAAAHdjdHBua2ZoLjJ1bQwAAAByenBxc2JzMC41dGEMAAAAdmFoeHF6MGMuMnBtDAAAAHZy + MHNza29yLm4ydwwAAAB4dDUwMHUyYi5yaGsMAAAAY3ZpeTI0ZHguY2t6DAAAAHU0c3dkb2x4LnFq + ZwwAAABqc2V0emMwZS5qaGUMAAAAaGI1NGIxdGkuM3F2DAAAAGVyNXFzcHZyLnUxMAwAAABibzRp + MnNmdi53MnUMAAAAbXpwdnNudWIua2xoDAAAAGtrMG14djBmLnNsbgwAAABjemJlbGVqZy5xaXEM + AAAANXhob2txNTQuY29qDAAAAHVyaWhzbjR5LmVreAwAAAB2dGFtaWl2MC5sd2IMAAAAbHhhc3g1 + eTQuejMyDAAAAG12dnJ2czFuLmRodQwAAAB5ejJxa2h3ZC50ZGUMAAAAeGwyYWd6dHYuMXNmDAAA + AHZnNGNybm0yLjNjYgwAAABrNTVmNWtwcS55cWIMAAAAa2RlbGI0bWkucWNtDAAAADN4NWxldGk0 + LmtkYgwAAABqd3FnYnVtYi5pcnQMAAAAaGVkbHlpNXQud3FsDAAAAGZ0ZXRzM2tvLmhtbAwAAABy + Z2MzdjN5cC4xY3AMAAAAZ3BoMzNqcGwudHoxDAAAADR1eDNzd2l5LjNhMgwAAABuY211d3V1MS41 + ZjAMAAAAaGhrYjBrdzAueWkyDAAAAHZobG1ha3VwLmhzaQwAAAAyd3dkdXFzdy50dzEMAAAAamJm + Z3FxeDUudHoyDAAAAG80dWk0a2RyLnAybQwAAAB4aWd3ZHBxZS4zencMAAAAamIwemtsbDEuMmFo + DAAAADB3eHBpZWlpLmVndAwAAABuNDNudG81NS5ueWYMAAAAeW1ocjFxeDUuMW9yDAAAAGY0bGZ3 + b3hpLm50ZgwAAABuemZyYmJ2eC5weXkMAAAAeWhyNXZvaXouMnVvDAAAADN5NXAyZXp3Lm55YwwA + AABuNXFnYWgxbS5vM28MAAAAcDNzMWUwMWQua2pnDAAAAGVxZDFoa2NhLnkzbgwAAAB2YTN1Y251 + ay4yMXAMAAAAYWVrYTE1Z3EucXFkDAAAAGNwdDNvNGZhLnhzdwwAAABsMXMyZ3Fhay52cWQMAAAA + anJvM2hzcDMuMmYzDAAAAGJzZ2FhdTBvLnBvawwAAABybHgxZGVoaC56eHoMAAAAdmZlNGlibmMu + YjJyDAAAAG5paTFtc3YzLnBzdQwAAAA1cWtkbnR5ci5xa3QMAAAAa2Yxa3Yxb3kuaGsyDAAAAHh1 + bmd3dWlqLnViMwwAAAB2Ymx3MndldC5rcm0MAAAAanFkZ29tNWEudmMxDAAAAHk1amtjbG4zLmxw + NQwAAABqcW1xeWVkdy5naWEMAAAAMW9qYjIwaWEudnRqDAAAAHRmaXZkdjIxLmF4MAwAAABwaWQw + aHpwcy5kdjUMAAAAd2ZnY2RxNGYueG8yDAAAAGNicDA1eG0yLnM1MAwAAABhMjAxYXBodi4wZjQM + AAAAZGwxMnl6bXIuZWJmDAAAAHgwZXZ5dHFyLmEydwwAAABnZm91NHlrMS55NXQMAAAAdzJqZHZs + MmIuZmJ3DAAAADJ4a3c0eHhyLnVpawwAAABneHFsaWdsMi5scHMMAAAAanN5dXl1emguZGhyDAAA + AGRkem5lMGpnLmV2NAwAAAB6d3pkdXBjcy5mMWMMAAAAbHZzYWFsYzEubWxqDAAAAHhheDBhZTVl + LnpjeAwAAAByZmRncm4xZS5yZHYMAAAAc201MnV4bm0uYjMwDAAAADF2cWt5NWZhLm54ZwwAAAB5 + Y3lreGVnYy4zYmwMAAAAajNqMnV5ZGIuZ3JmDAAAAGh6aHozNG1mLnB6NAwAAABhMHJzaWUxci5p + cTUMAAAAMGp1cmoyMWkuNDAzDAAAADAyM3c0YnJ4LjNzMAwAAAA0em95YjRzdy4zbXMMAAAAcGlv + MnM1MHAueGprDAAAAHBpYWpibXpyLmgzcgwAAAA1ZDMxeW5ndS54a3IMAAAAZ2dlMGMwdWEucmsw + DAAAAGpvZHIxbHVjLmk0cAwAAAAxcmNrZDN5NC5pbWoMAAAAeGxhbXhwZ3YuMWp0DAAAADJlMGsz + MWJwLm4xdAwAAAB1MW1sazF3NC52bjIMAAAAa3Y1YWhldmoudjBuDAAAAGMwdDVyMm9jLnI1cAwA + AAB4d20wdGt2bS5xbHkMAAAAdWpqcW9pM3IuamoyDAAAAG5sdHl0amd4LjN3YQwAAABoZmF4Mnhy + di5yc3YMAAAAdmdyYnlxdXYucXQ0DAAAADFqc3d4YWh3Lnk1awwAAAAza3Ftb3d3di5ia24MAAAA + ZDFocWk1dmMuY20yDAAAADFxMGRseGNpLmhjcgwAAABkemJsazRyai52ZHYMAAAAZ3loeDBwNXQu + ZGlzDAAAAGNsaWY1b3h2LnQwbgwAAABwYm52dzJ2Yy5oMDUMAAAAaWUxajNldXoudmMyDAAAAGNq + cnNjaWp3LmJzcAwAAAAxcGxtbjN3ai5kZzIMAAAAd3BxeW15cWMuZXBvDAAAADNteGpyYTBhLjVu + dAwAAABhcGxhZTVocS5ibG0MAAAAc3VjajQwcG8uMzRjDAAAAHpiY2twcDQzLjV1agwAAABhbG5s + YjRlNS5ibnkMAAAAYWl3amdzcWUuZW1mDAAAAGswbzFsbTUwLmNxYwwAAAA0cm1tbDVlYi5xZXAM + AAAAYXBpbWdvdGYueXE0DAAAAGF6b3Jwd2QwLmR3NQwAAAB5M2x0ZGkzYi5xZXMMAAAANHhvbHRm + cDAuZDV0DAAAAGhocDI1d2FpLnFxMAwAAAB4Y21obGJ6NS5paXIMAAAAbnpqd3p6MGYudmprDAAA + AHhyMTFmNHVuLjJidQwAAAB3ZGhqeHBuei5neG0MAAAAMnh5bGlsM2wuazF4DAAAAHZzMXZqd2cx + LmdqMgwAAABrMHRzbjRmaC5va2wMAAAAZDFqb2N6MmQuaHljDAAAAHF2MmpucTVzLmx5ZAwAAABx + ZHpwNWRyby4xcXcMAAAAa2ZhYmkzdHYuaXRmDAAAAHB5NG9xeWRiLjJ6MgwAAAAyNGV0dGMwdS53 + MGgMAAAAZGZkNDN6dHcubWlyDAAAAGF6Zno1eWk0Lm8zagwAAAAzdDV1d2Ruby5tdHoMAAAAb3ls + ZjF4aHguZ2RqDAAAADR5bnAwdmFuLnpidQwAAAA1enF4bXZqcC4yNTUMAAAANXFnc3F0Y2QuMmpk + DAAAADRuMm5kMGlvLm53ZAwAAAAxMm1qNWlrdy4yY3MMAAAAY3ZvZnd1dmwucXhnDAAAADBobHU1 + ZnJ1LmRjcwwAAAB4NGpoNXBkci51bzUMAAAAcWRxNHdib24ucWFyDAAAAGhvMHBhbHF4LnNocgwA + AABhMmJ0bWJ5YS5xZ2UMAAAAbGk1b3NwamouMGxsDAAAAHpldGgyMTFkLjBoYwwAAABsY2Y0NXky + bi52bjQMAAAAZXpvemI0M2suYTR6DAAAAHR1ZHVoanlyLmdnbwwAAABuZHBqaXJneC5rbHUMAAAA + MnBsbXVrdHIuYnB4DAAAAGhmeGxnb3RjLmcxYwwAAAB2cGtiMTF5Zy5pMHEMAAAAcW4ybmpvMTMu + Z21sDAAAAHJpY2o0eGs1LnBqbQwAAABqZ2RuMmN5Zi4zYW4MAAAAZDB3aGk0djEuY2wwDAAAAHAx + bGdncnVzLnB5bAwAAABqb3R3cW95ei5jZjUMAAAAM3p1cnZ3Y2oueWZnDAAAAGkxcGFkdnVuLm96 + bgwAAABhdGhucnJ6di5pdG8MAAAAc2Nmc21zZzQuc2lsDAAAAGdxZGp0MXNtLnZ4bAwAAAAzMG1i + aDNraS5rYm8MAAAAZzRoZnNoYWwuY2JpDAAAAHZlbmptanFtLnRmegwAAABhNTVpdnQ0My5zcWoM + AAAAbGY1cG14YXguYWJ6DAAAAGdtb3cwcmI0Lm13egwAAAByM3Nlemh6ai5xZzIMAAAAMGN2NHh6 + dzUuaXU1DAAAAHlzMjMzZm52LmNscAwAAABzaDJuZ2Fvdi5lY3QMAAAAbXFudG4ybXEuend2DAAA + AG8ydHFzM2NuLjBxcgwAAABycnF5ZWt6di5pcnQMAAAAcDVxMXkzdmQucDV5DAAAAGUzYzVtY29q + LmExcAwAAABtNXNxd2Nkai5vbHkMAAAAeW1uaG40bGguZ2lpDAAAAGZ0ZmJrbXlyLmoxMgwAAABo + c3ozcWdoNC53MTMMAAAAZWN0Zm9paHMuenV1DAAAADVsbHl5b2dhLmp0cgwAAAB2cmd5Mnl0eC5k + MzMMAAAANXA1YW1ja2wuam1sDAAAAGdrZXpkZmNzLjAwdQwAAAB0MzF2eHViaS55cmIMAAAAZzJ1 + MzJrenQudGllDAAAAGEzdG9nZnBjLjJ4MAwAAABrYzM1cDF2bC4wMXYMAAAAaml0MW9zNXcuanVj + DAAAAGVia3h2bXExLjJ0aQwAAABqYnd6cXVvbC54cDAMAAAAaHJrM2JwaHYuaW5qDAAAAHkweWNj + bTQxLnQxbAwAAAB3aW55a2FtZy5rMjMMAAAAaGtpamsxNTMuZTRwDAAAAGd4ZHprY3phLm1zbgwA + AAAzaWtwa2tteC5xZjIMAAAAYnRoc2dnNXQubnl4DAAAAG50M21pdGJ0LmowNQwAAABwamdpNTBu + MC41cWYMAAAAM25uZGNobWcueXZrDAAAADRhaXdwMWVhLjI1dAwAAABobXhjMmxqcC5ja3cMAAAA + d2lveTF5bmIuZ3gxDAAAAGdjdDNqbzEzLjJwMwwAAAB0cTB1MnZwbS4wdDMMAAAAb21ncW53dzEu + eTUxDAAAADIzcmVlbjI0LngzMgwAAAB6amVheWVzZy56dWsMAAAAZ2trd2x4MGYubnNvDAAAAHpz + dWl2em1jLnRmMwwAAABvMmt4bXBicS50bXEMAAAAdHBhbzNsMmgucG9zDAAAADBmbXozdHNxLndz + cQwAAAA0dDIxaDB0Yi56dDIMAAAAZXp1anB2ZXkuaWs1DAAAAHNoY2RzeW9nLmRlMwwAAABpdmt3 + ZWxteC5kaHoMAAAAc2JvNHRjeXcuNHV3DAAAAHJzbnpkbWExLmFlcwwAAABjYXd3YW5pbi5nYncM + AAAAajJvNXdkcncuZ3VrDAAAAGF5MHVodG9mLnN5ZQwAAAAwYnQ0d2l6bi4yaWwMAAAAeHFtamtv + NTUueGZwDAAAADVvdnlydHptLmQxawwAAABsY3VoaDR3cC5ldzMMAAAAYWJ6cGhhMTEuM2tkDAAA + AHZ2MWVkcnI0Lm1rcAwAAAB1aXEwajFrei5yNXcMAAAAeHFydWd2NG8uYWpkDAAAAHo0a3hibjVm + LmJjcAwAAAB5ZGVzcGpjZy5pajUMAAAAb25yMHJvZGsubGN6DAAAAGoxd2Z3eGVhLnMyNAwAAAB0 + cDRtNXR0dC53bXgMAAAAcGpkY3Bzd3MuYWoyDAAAAGtrcXgza25qLmh2ZgwAAABwdHJubm5jeC41 + ZW8MAAAAc2I1MTJ5YmouM3JjDAAAAHExenBoamN2LmNpaQwAAABwdGNka2ZxYy55M2MMAAAAZGl5 + bmJjc2gueHR1DAAAAG8yYTFiZjVoLmJlMAwAAABwMDBhc2psci5rengMAAAAM3hwYnRmYXMub2R5 + DAAAAHNwZmZ3bHhwLjRtcQwAAABjZGMxd25iay5sbWgMAAAAYjBvbm5ueTQueHkxDAAAAGJ0cXdr + NWpmLnhjYgwAAABncTR4c3dxdC54ZjIMAAAAeHNheHVzbmsua2pzDAAAAG9pYzE0azI1LnducwwA + AABsdnpvdzRpMy5jNHYMAAAAankzbWtueGUuajJ0DAAAAGxnNXI1ZnFnLmJwNAwAAAAxZWFqZ2Js + aS5tcGQMAAAAbzBydHh1YmcuMWdnDAAAAG1panliYXlrLjRtNAwAAAAxNW9wZjIydC56aW0MAAAA + MGJlaDRta2QueWVrDAAAAHVjc2pka3FxLmJpbAwAAABwbjRndzJwZC5nZXMMAAAAem92ajRqYjUu + MXVhDAAAAGMyMjN6Y3JsLmljcgwAAABiamp0NWRhNC5heDMMAAAAMnl6a3Fvc3kuZ3Z5DAAAAGJr + NGVwa2hrLnVhdQwAAABzbG40cmZxYS5jMnAMAAAAdnB4aXh1dnEuMmR0DAAAAGtpdDJndzFhLmMz + dAwAAAB3ZWowcGhmbi4xa2sMAAAAdHh1aGhxcGUuNDEwDAAAAHhzeHR3NGgyLmZjdwwAAAAzZm4y + cmR0NC5qZmMMAAAAYmdpMnN0YTEuams1DAAAAGlxbmRvamJqLnA1YgwAAAB1cG4zYnh5bS53NTAM + AAAAbmdkdDBybnIueGtzDAAAAGN2M25tMjJlLmN3MQwAAABqZmZqeWE0bC41aWoMAAAAcmJhbXB0 + NGkub3JrDAAAAHdveTFvZ3N0LmIyMAwAAABicHcyNHN6dy50am0MAAAAd3pmams0bDIuc2l0DAAA + AHYxcXRtZzFlLnV0cwwAAAByajJjcWRycC5taDQMAAAAMGU0dWRxd3cucG9qDAAAAG5lazV6c25y + LjB0MAwAAAA1am9zZG5oZi5ndmYMAAAAbXd6aXA0MWkuaTQ1DAAAAGlqZmsxc2l0LjR3eQwAAAAx + bXZ1eDFzcS55cHEMAAAAZnpiZ2JocDUueW1xDAAAAHVpMTFkenFuLnR0bAwAAABqMTBiMDNsaS54 + NGMMAAAAMXJ4MHFuaXQueW96DAAAADJzc2puMWF2LnptbAwAAAA0bWMxMzR4dy5yNGcMAAAAaXRl + aTVxa3oudXZiDAAAAHIxMWlkZW5sLjBycwwAAABzaWoxMDU1eC50eGsMAAAAamIxMTJkYnQuY3Z2 + DAAAAGIwd2tncGFuLm5xawwAAAAzNXBlamIzZC5mZDUMAAAAMm5oeHB4MmQudDNlDAAAADFkbnhr + bzRxLmRhdgwAAABhdzB5cWZwby4xbTIMAAAAb2U1MnN0cXguMnJsDAAAAHBubGhjd2t6Lmt4MwwA + AAB4bGdvNHgxdy5odXUMAAAAbzRrNHJvNW0uMmdiDAAAAGF1azJ3dHhnLmVmMAwAAAB3ZzBkYWwz + Zy50bXIMAAAAa2p4MGVyb2EucGYwDAAAADJnNHlwdHVlLjMzegwAAABoMjNpeXJlZS5qaWoMAAAA + aGR0dzNsZWouaHdyDAAAAG5zY3JjdXkyLjFkbgwAAABrY2ZudjJzcS5qMGUMAAAAMjJxMHB3Mmwu + NWZsDAAAAHhoZWd5d3Z6LncxYwwAAAByMnhzaTVtaC5wbzEMAAAAcHp2dTV5bXYudXh3DAAAADVx + ZGRrYmJiLnFnbgwAAAAzZnM0ZDBnMS5qeHcMAAAAZW9meW9ueDUudHpoDAAAAHd2djRwcW0xLmV4 + dAwAAABweXZudXJ0ZC4zZGMMAAAAaXhlNGF0czQudHEzDAAAADFycjMxNGcyLmQyeQwAAAA1YmRz + eTR1cy4yMmQMAAAAamxiMGJ0enIubGt3DAAAADR1MGhiYWQzLnhyNQwAAAB2dmdrbDJjby4yeXQM + AAAAa2c1anNqNXIubG96DAAAAGkyaDNoZ3NhLnhkMwwAAABudnVkMTNicC5iNTQMAAAAYnAza21y + d3AuNHUzDAAAAHd3MGFzc3l4Lmp6MQwAAABvaGJ1dXNwdS5ha3cMAAAAcmNpNHpxemQuNHNmDAAA + AGZ1b2pmcTQwLmZ5dAwAAABtYXBiazJpdS5jNHEMAAAAanUxdm8wbG8ubHF5DAAAAG1hMHNxZXRq + LnF4cgwAAABxbnd1dGx6YS5neXkMAAAAamtybnJkdTMucW5vDAAAAGF2NHNsZ3cyLm5qNQwAAAB4 + a2xpamN2ai4zcjEMAAAAc3cxYnZyMHIucWN3DAAAAHZydnI0amFwLnJkMwwAAAAzM2pqYXBhcS5x + bGMMAAAAczFwZ3psaHgueXRwDAAAAHBseDN3aWh0Lnp5bwwAAABwY2llMGp5Zi4ydGEMAAAAd3No + cmV0dGYubzAyDAAAAHNyZXZ3eGN4LmY0dwwAAAAyZjNleW4yeC5nc2MMAAAAZXF3MGFsZnUud2Jr + DAAAADBpdDFtZnhzLmpxMAwAAABpbHl4dXR4ei5tNXoMAAAANHJobG9pcjAuaTAzDAAAADJ2b2Nm + ZzNtLnhycwwAAABkd295eWllaC5wZWMMAAAANWIycGk0NWEuZGk1DAAAAHlkbWRrMWJwLmtlaQwA + AABqaWRjNW5paC41enEMAAAAMDJnYjJ6aXQuM3VtDAAAAHE1ZmFjM2p6LnczaQwAAABnZmswc2Jj + My5wYWsMAAAAd3Nnd3B0d2IubG8xDAAAAGRtd3FycXpvLmthdQwAAAB5ZWVrbGp3YS5oZWwMAAAA + dHpoNHN2dTIuaHp6DAAAAHBjbXhrMWZuLjRseQwAAABjMWt1M3p2bS5hMXAMAAAAa2owMDExNWUu + dXZnDAAAAGJuNHN5cWdrLjBjMgwAAAAyb21sNWJ2NS4zdGsMAAAAdzB5eHBjd3cubWwwDAAAAGQx + ZmNqYmsxLnFseAwAAAAzcmhvM3Rkdy51MnoMAAAAb2FrdGoyZGMuZjVuDAAAAHoyaTF4MTIxLmY0 + eQwAAABra2lldXZ0NC5zY3gMAAAAeHJweXVia3kub2NwDAAAADVieXR0Z29oLmRtMgwAAABkYXYz + Ympvdi5waTIMAAAAb3NoaWh4ZG8ueTFwDAAAAG0wYnJramU0LngwagwAAAB4ZHU1ZXg0cS5memUM + AAAAeGVnNDBib2QudWp3DAAAAHBnMXYzczJiLjN0egwAAABuc2FqdWY0ci52dGcMAAAAY3FrdWtz + bHIuMjJwDAAAAGZ2dmh3aWs0LjF0NAwAAABkanRudmJwdC5seHQMAAAAa3Nkdm1wMzEuenNzDAAA + AGF3cHczZGpiLjBnZAwAAABwb21kYzF0cS52amgMAAAAZHJqZm9pbnUuejQzDAAAAGYyc2NpaHI0 + LjJubQwAAABweWR1bGNpYi56YzQMAAAAMDF3d3llNGcucGZzDAAAAGNxd2ZnaG11LnYydwwAAAB5 + anphNGJrbC5ocWcMAAAAbG5qMmpyNW0udGJtDAAAAHl2MG9tcWl6LngxdAwAAABzYXNueWEyZC40 + d28MAAAAem5iejRoYmQubHozDAAAAHZ6MzFuYXNzLjM1cgwAAAAxc2I0bnlsZy5yejMMAAAAYTQz + emVkaW4uMXYyDAAAAGV5YTUwcnZmLmg1YQwAAABkMXV4YnFkMy53bjQMAAAAMHRsNTU0bWYuZnMx + DAAAAHlmendwNHlxLnp5bAwAAAAwYXNiZHJuci5yYXcMAAAAbjNqeXZrdnAuZ3doDAAAAHJja3A1 + c2ljLm1mawwAAABrZWVmcG1nYy50dGcMAAAAcXAwZXlrdDMucTRxDAAAAHowc3UwZ3c0LmxwaAwA + AABkNWZ4cXpldS5ua2kMAAAAbTVraGpscHcuZzMxDAAAAHRjMGtqeXF1LnV5ZQwAAABhaG5ncmlv + dS56bWUMAAAAaGVxa2R1bHUudHE0DAAAAHlwZHZ3MXRtLnN0dQwAAAB2ZHc0NG4yMC5lcHkMAAAA + bGN6aTQ1MnAuaWEyDAAAAGEwcmY1azRwLnQwcwwAAABhcWg0YWc0bC5uZ2MMAAAAZWNwdWE1cWku + bWd0DAAAADV3b25lcTUyLnJndwwAAAB3NW9rNWp2ZS5xbHcMAAAAMnpjcWJrZmEubGVvDAAAAGR1 + eXpvNXVlLjNuYwwAAABqNG9nMnlzdS5sd2kMAAAAZGttcWp6ZTMuYjQyDAAAAGVmZ2FvcmRxLnhy + eQwAAAA0bzNhY3B0ZC41c3EMAAAAa2J5cHJpMm8ubGJnDAAAAGtxZ253ZXJ4LnB3dwwAAAB6dXRn + enA1bi52enUMAAAAZHZycHZ5M3EuejJzDAAAAHNidjFqcGh3LmdyYwwAAAB6ZDFoaDFsdy5wZGwM + AAAAYW1veWtvZGkuNW9nDAAAAG1uMWkzYjMzLmF5YQwAAAB2cHllbGFvci52M3IMAAAAeWpibmgw + cGouMzF2DAAAADMwcndocHBsLmt1NQwAAABrdWJwcWxvYi53MXkMAAAAazNsZm9pbWEudGtmDAAA + ADNleGlsbXB2Lmp6aQwAAABsYWF1bW1nby51em0MAAAAMHIwcTV0bHkud2ZwDAAAADN4YTBxZ2x5 + LmljcgwAAAA1NHBhMnBtdy5yamkMAAAAYW9nZWs1dzEudzMzDAAAADNvZ2t3cWVvLmhpaQwAAABp + ZmxlaTFuMS5idGsMAAAAYmxkd2R0b3Uudmk0DAAAAGFiMXNhdGo0Lm1xdQwAAABkd2ViZGwwbC5t + cjIMAAAAYTRxZG94ZWsuajMxDAAAAGszMHA1c2NuLnRsMwwAAAB1MHoxMHloby5pbXcMAAAAY3lr + ampkMWMuNGd5DAAAADVqM2wxMHEwLnlmcgwAAABhdXF6cmp1aC5ld2QMAAAAemdubGx6bnUuc3Fv + DAAAAGI1ZjNmcWRpLjB5NQwAAABzeWpobG9pby41YnMMAAAAcDVucm4weHkuMmkwDAAAAHVkeGxj + dmdtLmpnagwAAAAzZmMwZXdibS5lYXUMAAAAejFkMHVvdDAudnNqDAAAADIzeTNzZnFjLmZnZAwA + AABxMnRmYjB2ay5uMmQMAAAAa2xieXcwczUuZ2ozDAAAADN0bWhjaHExLjFxdQwAAABjZXU1M2o1 + dy5rcXYMAAAAbWRjcGVld2IuNXhxDAAAAHl6MmFpd3k1Lm9scAwAAABidHZycTFiZy5jeXIMAAAA + eXlhbGJ1Y3MuYW5nDAAAAHAzeHRvcDFpLnFlZwwAAAB3ZXdrM2dmZC5uaW0MAAAAZm1qb2d4b2cu + NTU0DAAAAGVydTJsbmowLnN1dAwAAAB6bG5xa3hnYS53MHIMAAAAZXgxeDB1MXUuYnpuDAAAAHZm + eGJidWFkLm5tNQwAAABidmo1eWxwZC53ZnYMAAAAZW5rY3FzNTUudGx0DAAAAHdsZzBxcWh2LnNy + ZwwAAABvZWVrcjJ0eC51aXkMAAAAdmh0aTB3cXAudWYxDAAAADV0cXh0enYzLnk0cgwAAAB4ZXdl + bGRrdi56YXEMAAAAamJ4YzB3dWkuMWlkDAAAAG9rdXB6MnN2LmhmaAwAAAB1MWJ5eDFlbi5taXIM + AAAAaGhwejQyeHQuZ3F4DAAAADBxbDMzZXk0LmMwagwAAAA1bTVsbjVsbi4wdTIMAAAAcnN0a2Jx + dWwudWQyDAAAAG94MDQ1azFvLmdtbwwAAAB0dWRrcW0wdS50dmwMAAAAY2ZjMWlvam8uNGluDAAA + AGozcGM1c20wLm1sYwwAAABpc2Q0MGpzdC50ZmcMAAAAazM0ZHdjd2IuejNtDAAAAHZleDV1c2Rv + Lm1nYQwAAAB5ZWpnb2d4by55bnAMAAAAdjRvbjB1bGwucHlmDAAAAHB3MmUwbHpzLjVnawwAAAB2 + enEzMW94Yi50djMMAAAAeHFzMGthZ3QueTV4DAAAAGhyYmlrNGllLnNndgwAAABjZWtsNDBzaS5y + cnkMAAAAMDV0Y3h0MmwucXo1DAAAAHF4bHZnczFiLnVjbAwAAABnMndsNDBrMS5qeTIMAAAAdWEx + cnIxZGwudWVlDAAAAHFzdWdueXZmLnhycQwAAAB6bXoxd3V0dC40bzAMAAAAYTJuajNxZ3kuajR6 + DAAAADUxeW01YmhxLmVybAwAAABpMXJsMnBlYi5odmoMAAAAcWJyanptcnUubWZqDAAAAHljNWdr + Z3lsLm1wdAwAAABkZDV3dGh5aS5xeGcMAAAAa3dlZHV2cG4uZnRhDAAAAGFqZDNkdjBoLmtqYwwA + AABocGdudG5qaC56dHIMAAAAeDRmYWF5b24uemd6DAAAAGRleDR4YjVsLnJtbQwAAAA1NWZvcXJy + bC4ybXUMAAAAd2lrdXB4b2ouc2V1DAAAAHVkYWxnenR0LmMzbwwAAAA0czJ6aG15cC4waTEMAAAA + MHB4MWRpY2wucWd3DAAAAHVxYTF4bGRxLnQydgwAAAB1MXF1aHRzdi5xdXUMAAAAMnMycmJmdm8u + anZpDAAAAGQ0bDQwbGJxLjUwZgwAAAB4YTNsajR3Yi5udHYMAAAAam9jZnc1dmQubG5tDAAAAHow + YmNsa2R1LmNwawwAAAB3MGpvZ3BzMS5hNXUMAAAAMDM0bDBvaDEuNWh2DAAAADNzY3Vzd2JzLnl3 + aQwAAABidXp6MmpuMi52MzUMAAAAa2V0c2IyeHQuaXgzDAAAAG01a3RycmtsLmJmNQwAAABkeXVq + MXRydC5rdXgMAAAAYzExcG9lMDMuaHJjDAAAAGJvd2lyZDQzLmI0YgwAAAB6M2E1eDR6dS41em8M + AAAANWw1MWswdGsueGRsDAAAAGZzNXgyYWxuLmpkZwwAAABpcno1aHAxcC54dzEMAAAANDRobGZs + djQub2lpDAAAAHVzMzMyMDJyLm1tbQwAAAAwZGV2aGIwMC5lbm8MAAAAeWdva2FscHQubXpuDAAA + AGx5ZmNscmh3LnJ0NAwAAABka3hrY2l1ai4zZnAMAAAAemtkbHNwcjEuaHQyDAAAAGE0aDNvMmFy + LnBzNQwAAABxd2YwM2lxZC5oZmUMAAAAanl0cHZ2YWEudWYwDAAAAGFvdno1ZjRhLmlhMAwAAABj + djFlMnhvdS4xbngMAAAAbGFsbzVncmoueWV6DAAAAHgzanRjbzRjLjJsaAwAAABycDR0c3ZibS5o + a2kMAAAAeTB2MjM1eG4uMG5mDAAAAG56eDR2MXBpLmNlMAwAAABocWFleXd2by5zazAMAAAAcXMw + YmRudjEuNDVjDAAAAGhpM3p5cjFsLmlidgwAAAB6YzJoM28xdy5iMnUMAAAAZ2F5eXo1dDUuNWNl + DAAAAGZhZXEwdTNrLmZndQwAAABtcmZwZ3FzdS5ldm4MAAAAY2hlbTRsb3kuZnMyDAAAAGlyc2xn + b2hkLjVibgwAAAB2YWR0YXNsaC5oeGIMAAAAZnhpMmwyeXAuNGdhDAAAAGd1aHFibjExLnVyagwA + AABmcTJ5bmZiMS5tb3IMAAAAZm50aWR4dHEudDJjDAAAAHNxenZhcnQ1LnlmZgwAAABnbDEyZ2Zx + My5nZWYMAAAAcWNtYmpha2cucGc0DAAAAG4wanFyaDNjLnBtdQwAAABpNGdmdmN0Zy5sa3gMAAAA + eW1vNXlsengudmt3DAAAAHZ1bWFocGV0LmVqMAwAAABza254ZXVhby41eG0MAAAAdHF5bmFoaGcu + dW8zDAAAAG4zMm00aGVkLnRtcgwAAAAwcHVpbjRwdy54NHAMAAAAbGgxZTBjM3QuamNlDAAAADBj + eXBuZGVwLjNrdwwAAABrdWg0NGp3aC53c3IMAAAAb3UzNDFwd2sud2lxDAAAAHBobWZtZ3dkLmli + cAwAAABhc2szdXNzcy56YjUMAAAAaHgwYzFnZmIudXQzDAAAAGFxaWloMGxlLnYyawwAAABleHVl + aWVmZi5sc3gMAAAAa2pmMG9ubmIueTNiDAAAADJ5dG1vZHpwLnMyZQwAAAB3NHczZjUyai5vaGEM + AAAAajJuamJtZHEuMTRhDAAAAG1xenExcGptLnM1NAwAAAA1ZjBvb2h4My4xamsMAAAAaWJxcjUw + anAudmVnDAAAADFsM3phZ3F4Lm80cQwAAABueGN4MzBpbS4wdDAMAAAAb3ZkYmVnZGcuMWRmDAAA + ADR3MTJncHAzLmRycwwAAABxMnlkYjJtci4xNGQMAAAANWZyZHJqNG4udmduDAAAAGtua3B5MGtv + LjFucAwAAAA0aW54a3YzZC54eWgMAAAAYm1ucnBscWcuMHdxDAAAAHh5Z2U0ZDM0LjQ1eQwAAAAz + bGN1aGZpcS4yYWYMAAAAeGtpNXYxMGguZHkzDAAAADA0bWJzeWJzLnAzdQwAAAAzZXlpYjNqMi5s + Z2sMAAAAeHlxZXE1ejMubTRhDAAAAGtqcG9ud3hqLnNjYwwAAAA1a3EyYm0wby52azEMAAAAcnNj + c21uNWkudzFuDAAAAHptNWtpY3JyLjV4ZgwAAAB3dGVvdHcxci54dW0MAAAAcXZkMDIzemguYmNw + DAAAAHlranlrY3F4LnJqMAwAAABqZHQxYnV0Zy41d2UMAAAAbW53ZjJnbXUuM3hxDAAAAG1nb2Vr + dTNhLnl3ZAwAAAA0bnAwdGdoNS5ybWoMAAAANHF2c3JndnIudnBqDAAAAHhjZGN6cnl4LmZhcgwA + AAA0azEwdnV6by56d3cMAAAAb3NhZHYyeWouc2RnDAAAAGx4c2VsYXF2LjJjYwwAAAB2dGkyMDE0 + di4zY3YMAAAAaGNhMGx3cjMueGp0DAAAAGJqbnIxMHN6LnM1eQwAAABzcjVvZ25jNS5ocHMMAAAA + YTJqaHRxeWIuczVjDAAAAGtmZG92aXptLmljdwwAAABvZDMzNDVvMS41MXoMAAAAY2VzM24zdjIu + dm53DAAAAHZycDBncG1mLnkyYQwAAAB2MDFmYWJsYi41djUMAAAAanIwZnRoYWYuNWJ1DAAAAG4x + dnYxdHN1LjFpbAwAAABnZjFiaDV6by5iNWkMAAAAY25sNHhpM3Uuc2NkDAAAAHMxaGpub2t0Lmx3 + agwAAABqbmE1em0wYy5hb3gMAAAAY2phenp1bXguNXE0DAAAADVvaW81bWN4LnoxMQwAAABrbm41 + cW1ueS5kbDAMAAAAbTNkd3JxMmEuMnJ2DAAAAGJ3YmlmM20zLm94YgwAAAB0aXdpb3VsaS4yMmMM + AAAAMXU1cjFuYXoueWhjDAAAAG52MGgxNHRzLnBpeQwAAAB3cnNzY2htcy5obWEMAAAANXF4MG81 + MmIuZnlwDAAAAGJuNHJ6aXNyLjV5cwwAAAB1cmZvMmJxYi51Y3cMAAAAc3ZlZ3Rpb2UuaWNzDAAA + AGZ6aWpmcGpsLmMwagwAAABnM3lwdTJobS5qanQMAAAAd2llaG1mejIuMTJkDAAAAGQ1eXViM3Nu + LmRoagwAAAAyZnZ3eGlsdi5pd2gMAAAAdTV4NWtwMXguenJlDAAAADEyc3Q0MDVnLmJ4dQwAAABu + cWZtMWJvZS51ZG4MAAAAdGxhczJ6Z2QuZWswDAAAAG0xdmhyMWl6LnhucgwAAAB6cHpuNHczeC5u + M20MAAAAYnNqbDBudmkuaW5oDAAAADJ0amlwd2J6LjR5NQwAAABnZ3BrZGxvdy5vd2QMAAAAZHpo + M2NmYXguNWZmDAAAAGlnM2x0ZWdkLjVpNQwAAAA1eTBnZWszdS5pMm4MAAAAa2JiZGEza3MubWl0 + DAAAAG1mbzF0amV4LjR5bAwAAABlNXFpNXppYS5sMXgMAAAAeTRjNHZsM3EuMnF6DAAAAGRhZHht + MjN4Lmx4cQwAAAB6amlqZGV2cS55bmEMAAAAM290ZXByancubW93DAAAAGQ1NXA0b3BjLng1aAwA + AAB4bGE0NGYxaS5jbmIMAAAANTFiNWZndXkuaDB4DAAAAGdsb2RnM2lmLmlyMwwAAAAwZGR2anNh + ZS5vdWYMAAAAZG5qd25lcnYuZGZ4DAAAADRoYXA1c3ZsLmowMQwAAAB2a3JsbHFndS5zemcMAAAA + MTEyYnFwcWYuaWMzDAAAAGtwNHhyeWdmLm9tawwAAAB1dWx6bmFwdS4yaGQMAAAAb2V6cmgwc2ku + ajJ4DAAAAHNudnF3aGkxLml3aAwAAAB6aWZsa24zcC5sMGoMAAAANGJ5ZnhkMDUucGJxDAAAAGRs + c2Fpb2FzLmhzMwwAAAAweGZhdDNxei5vYWkVABWOfRWOfSwV0A8VABUGFQYcGAQxOTk5GAQxMDAw + FgAW0A8YBDE5OTkYBDEwMDAAAAADAAAA0A8BBAAAADEwMDAEAAAAMTAwMQQAAAAxMDAyBAAAADEw + MDMEAAAAMTAwNAQAAAAxMDA1BAAAADEwMDYEAAAAMTAwNwQAAAAxMDA4BAAAADEwMDkEAAAAMTAx + MAQAAAAxMDExBAAAADEwMTIEAAAAMTAxMwQAAAAxMDE0BAAAADEwMTUEAAAAMTAxNgQAAAAxMDE3 + BAAAADEwMTgEAAAAMTAxOQQAAAAxMDIwBAAAADEwMjEEAAAAMTAyMgQAAAAxMDIzBAAAADEwMjQE + AAAAMTAyNQQAAAAxMDI2BAAAADEwMjcEAAAAMTAyOAQAAAAxMDI5BAAAADEwMzAEAAAAMTAzMQQA + AAAxMDMyBAAAADEwMzMEAAAAMTAzNAQAAAAxMDM1BAAAADEwMzYEAAAAMTAzNwQAAAAxMDM4BAAA + ADEwMzkEAAAAMTA0MAQAAAAxMDQxBAAAADEwNDIEAAAAMTA0MwQAAAAxMDQ0BAAAADEwNDUEAAAA + MTA0NgQAAAAxMDQ3BAAAADEwNDgEAAAAMTA0OQQAAAAxMDUwBAAAADEwNTEEAAAAMTA1MgQAAAAx + MDUzBAAAADEwNTQEAAAAMTA1NQQAAAAxMDU2BAAAADEwNTcEAAAAMTA1OAQAAAAxMDU5BAAAADEw + NjAEAAAAMTA2MQQAAAAxMDYyBAAAADEwNjMEAAAAMTA2NAQAAAAxMDY1BAAAADEwNjYEAAAAMTA2 + NwQAAAAxMDY4BAAAADEwNjkEAAAAMTA3MAQAAAAxMDcxBAAAADEwNzIEAAAAMTA3MwQAAAAxMDc0 + BAAAADEwNzUEAAAAMTA3NgQAAAAxMDc3BAAAADEwNzgEAAAAMTA3OQQAAAAxMDgwBAAAADEwODEE + AAAAMTA4MgQAAAAxMDgzBAAAADEwODQEAAAAMTA4NQQAAAAxMDg2BAAAADEwODcEAAAAMTA4OAQA + AAAxMDg5BAAAADEwOTAEAAAAMTA5MQQAAAAxMDkyBAAAADEwOTMEAAAAMTA5NAQAAAAxMDk1BAAA + ADEwOTYEAAAAMTA5NwQAAAAxMDk4BAAAADEwOTkEAAAAMTEwMAQAAAAxMTAxBAAAADExMDIEAAAA + MTEwMwQAAAAxMTA0BAAAADExMDUEAAAAMTEwNgQAAAAxMTA3BAAAADExMDgEAAAAMTEwOQQAAAAx + MTEwBAAAADExMTEEAAAAMTExMgQAAAAxMTEzBAAAADExMTQEAAAAMTExNQQAAAAxMTE2BAAAADEx + MTcEAAAAMTExOAQAAAAxMTE5BAAAADExMjAEAAAAMTEyMQQAAAAxMTIyBAAAADExMjMEAAAAMTEy + NAQAAAAxMTI1BAAAADExMjYEAAAAMTEyNwQAAAAxMTI4BAAAADExMjkEAAAAMTEzMAQAAAAxMTMx + BAAAADExMzIEAAAAMTEzMwQAAAAxMTM0BAAAADExMzUEAAAAMTEzNgQAAAAxMTM3BAAAADExMzgE + AAAAMTEzOQQAAAAxMTQwBAAAADExNDEEAAAAMTE0MgQAAAAxMTQzBAAAADExNDQEAAAAMTE0NQQA + AAAxMTQ2BAAAADExNDcEAAAAMTE0OAQAAAAxMTQ5BAAAADExNTAEAAAAMTE1MQQAAAAxMTUyBAAA + ADExNTMEAAAAMTE1NAQAAAAxMTU1BAAAADExNTYEAAAAMTE1NwQAAAAxMTU4BAAAADExNTkEAAAA + MTE2MAQAAAAxMTYxBAAAADExNjIEAAAAMTE2MwQAAAAxMTY0BAAAADExNjUEAAAAMTE2NgQAAAAx + MTY3BAAAADExNjgEAAAAMTE2OQQAAAAxMTcwBAAAADExNzEEAAAAMTE3MgQAAAAxMTczBAAAADEx + NzQEAAAAMTE3NQQAAAAxMTc2BAAAADExNzcEAAAAMTE3OAQAAAAxMTc5BAAAADExODAEAAAAMTE4 + MQQAAAAxMTgyBAAAADExODMEAAAAMTE4NAQAAAAxMTg1BAAAADExODYEAAAAMTE4NwQAAAAxMTg4 + BAAAADExODkEAAAAMTE5MAQAAAAxMTkxBAAAADExOTIEAAAAMTE5MwQAAAAxMTk0BAAAADExOTUE + AAAAMTE5NgQAAAAxMTk3BAAAADExOTgEAAAAMTE5OQQAAAAxMjAwBAAAADEyMDEEAAAAMTIwMgQA + AAAxMjAzBAAAADEyMDQEAAAAMTIwNQQAAAAxMjA2BAAAADEyMDcEAAAAMTIwOAQAAAAxMjA5BAAA + ADEyMTAEAAAAMTIxMQQAAAAxMjEyBAAAADEyMTMEAAAAMTIxNAQAAAAxMjE1BAAAADEyMTYEAAAA + MTIxNwQAAAAxMjE4BAAAADEyMTkEAAAAMTIyMAQAAAAxMjIxBAAAADEyMjIEAAAAMTIyMwQAAAAx + MjI0BAAAADEyMjUEAAAAMTIyNgQAAAAxMjI3BAAAADEyMjgEAAAAMTIyOQQAAAAxMjMwBAAAADEy + MzEEAAAAMTIzMgQAAAAxMjMzBAAAADEyMzQEAAAAMTIzNQQAAAAxMjM2BAAAADEyMzcEAAAAMTIz + OAQAAAAxMjM5BAAAADEyNDAEAAAAMTI0MQQAAAAxMjQyBAAAADEyNDMEAAAAMTI0NAQAAAAxMjQ1 + BAAAADEyNDYEAAAAMTI0NwQAAAAxMjQ4BAAAADEyNDkEAAAAMTI1MAQAAAAxMjUxBAAAADEyNTIE + AAAAMTI1MwQAAAAxMjU0BAAAADEyNTUEAAAAMTI1NgQAAAAxMjU3BAAAADEyNTgEAAAAMTI1OQQA + AAAxMjYwBAAAADEyNjEEAAAAMTI2MgQAAAAxMjYzBAAAADEyNjQEAAAAMTI2NQQAAAAxMjY2BAAA + ADEyNjcEAAAAMTI2OAQAAAAxMjY5BAAAADEyNzAEAAAAMTI3MQQAAAAxMjcyBAAAADEyNzMEAAAA + MTI3NAQAAAAxMjc1BAAAADEyNzYEAAAAMTI3NwQAAAAxMjc4BAAAADEyNzkEAAAAMTI4MAQAAAAx + MjgxBAAAADEyODIEAAAAMTI4MwQAAAAxMjg0BAAAADEyODUEAAAAMTI4NgQAAAAxMjg3BAAAADEy + ODgEAAAAMTI4OQQAAAAxMjkwBAAAADEyOTEEAAAAMTI5MgQAAAAxMjkzBAAAADEyOTQEAAAAMTI5 + NQQAAAAxMjk2BAAAADEyOTcEAAAAMTI5OAQAAAAxMjk5BAAAADEzMDAEAAAAMTMwMQQAAAAxMzAy + BAAAADEzMDMEAAAAMTMwNAQAAAAxMzA1BAAAADEzMDYEAAAAMTMwNwQAAAAxMzA4BAAAADEzMDkE + AAAAMTMxMAQAAAAxMzExBAAAADEzMTIEAAAAMTMxMwQAAAAxMzE0BAAAADEzMTUEAAAAMTMxNgQA + AAAxMzE3BAAAADEzMTgEAAAAMTMxOQQAAAAxMzIwBAAAADEzMjEEAAAAMTMyMgQAAAAxMzIzBAAA + ADEzMjQEAAAAMTMyNQQAAAAxMzI2BAAAADEzMjcEAAAAMTMyOAQAAAAxMzI5BAAAADEzMzAEAAAA + MTMzMQQAAAAxMzMyBAAAADEzMzMEAAAAMTMzNAQAAAAxMzM1BAAAADEzMzYEAAAAMTMzNwQAAAAx + MzM4BAAAADEzMzkEAAAAMTM0MAQAAAAxMzQxBAAAADEzNDIEAAAAMTM0MwQAAAAxMzQ0BAAAADEz + NDUEAAAAMTM0NgQAAAAxMzQ3BAAAADEzNDgEAAAAMTM0OQQAAAAxMzUwBAAAADEzNTEEAAAAMTM1 + MgQAAAAxMzUzBAAAADEzNTQEAAAAMTM1NQQAAAAxMzU2BAAAADEzNTcEAAAAMTM1OAQAAAAxMzU5 + BAAAADEzNjAEAAAAMTM2MQQAAAAxMzYyBAAAADEzNjMEAAAAMTM2NAQAAAAxMzY1BAAAADEzNjYE + AAAAMTM2NwQAAAAxMzY4BAAAADEzNjkEAAAAMTM3MAQAAAAxMzcxBAAAADEzNzIEAAAAMTM3MwQA + AAAxMzc0BAAAADEzNzUEAAAAMTM3NgQAAAAxMzc3BAAAADEzNzgEAAAAMTM3OQQAAAAxMzgwBAAA + ADEzODEEAAAAMTM4MgQAAAAxMzgzBAAAADEzODQEAAAAMTM4NQQAAAAxMzg2BAAAADEzODcEAAAA + MTM4OAQAAAAxMzg5BAAAADEzOTAEAAAAMTM5MQQAAAAxMzkyBAAAADEzOTMEAAAAMTM5NAQAAAAx + Mzk1BAAAADEzOTYEAAAAMTM5NwQAAAAxMzk4BAAAADEzOTkEAAAAMTQwMAQAAAAxNDAxBAAAADE0 + MDIEAAAAMTQwMwQAAAAxNDA0BAAAADE0MDUEAAAAMTQwNgQAAAAxNDA3BAAAADE0MDgEAAAAMTQw + OQQAAAAxNDEwBAAAADE0MTEEAAAAMTQxMgQAAAAxNDEzBAAAADE0MTQEAAAAMTQxNQQAAAAxNDE2 + BAAAADE0MTcEAAAAMTQxOAQAAAAxNDE5BAAAADE0MjAEAAAAMTQyMQQAAAAxNDIyBAAAADE0MjME + AAAAMTQyNAQAAAAxNDI1BAAAADE0MjYEAAAAMTQyNwQAAAAxNDI4BAAAADE0MjkEAAAAMTQzMAQA + AAAxNDMxBAAAADE0MzIEAAAAMTQzMwQAAAAxNDM0BAAAADE0MzUEAAAAMTQzNgQAAAAxNDM3BAAA + ADE0MzgEAAAAMTQzOQQAAAAxNDQwBAAAADE0NDEEAAAAMTQ0MgQAAAAxNDQzBAAAADE0NDQEAAAA + MTQ0NQQAAAAxNDQ2BAAAADE0NDcEAAAAMTQ0OAQAAAAxNDQ5BAAAADE0NTAEAAAAMTQ1MQQAAAAx + NDUyBAAAADE0NTMEAAAAMTQ1NAQAAAAxNDU1BAAAADE0NTYEAAAAMTQ1NwQAAAAxNDU4BAAAADE0 + NTkEAAAAMTQ2MAQAAAAxNDYxBAAAADE0NjIEAAAAMTQ2MwQAAAAxNDY0BAAAADE0NjUEAAAAMTQ2 + NgQAAAAxNDY3BAAAADE0NjgEAAAAMTQ2OQQAAAAxNDcwBAAAADE0NzEEAAAAMTQ3MgQAAAAxNDcz + BAAAADE0NzQEAAAAMTQ3NQQAAAAxNDc2BAAAADE0NzcEAAAAMTQ3OAQAAAAxNDc5BAAAADE0ODAE + AAAAMTQ4MQQAAAAxNDgyBAAAADE0ODMEAAAAMTQ4NAQAAAAxNDg1BAAAADE0ODYEAAAAMTQ4NwQA + AAAxNDg4BAAAADE0ODkEAAAAMTQ5MAQAAAAxNDkxBAAAADE0OTIEAAAAMTQ5MwQAAAAxNDk0BAAA + ADE0OTUEAAAAMTQ5NgQAAAAxNDk3BAAAADE0OTgEAAAAMTQ5OQQAAAAxNTAwBAAAADE1MDEEAAAA + MTUwMgQAAAAxNTAzBAAAADE1MDQEAAAAMTUwNQQAAAAxNTA2BAAAADE1MDcEAAAAMTUwOAQAAAAx + NTA5BAAAADE1MTAEAAAAMTUxMQQAAAAxNTEyBAAAADE1MTMEAAAAMTUxNAQAAAAxNTE1BAAAADE1 + MTYEAAAAMTUxNwQAAAAxNTE4BAAAADE1MTkEAAAAMTUyMAQAAAAxNTIxBAAAADE1MjIEAAAAMTUy + MwQAAAAxNTI0BAAAADE1MjUEAAAAMTUyNgQAAAAxNTI3BAAAADE1MjgEAAAAMTUyOQQAAAAxNTMw + BAAAADE1MzEEAAAAMTUzMgQAAAAxNTMzBAAAADE1MzQEAAAAMTUzNQQAAAAxNTM2BAAAADE1MzcE + AAAAMTUzOAQAAAAxNTM5BAAAADE1NDAEAAAAMTU0MQQAAAAxNTQyBAAAADE1NDMEAAAAMTU0NAQA + AAAxNTQ1BAAAADE1NDYEAAAAMTU0NwQAAAAxNTQ4BAAAADE1NDkEAAAAMTU1MAQAAAAxNTUxBAAA + ADE1NTIEAAAAMTU1MwQAAAAxNTU0BAAAADE1NTUEAAAAMTU1NgQAAAAxNTU3BAAAADE1NTgEAAAA + MTU1OQQAAAAxNTYwBAAAADE1NjEEAAAAMTU2MgQAAAAxNTYzBAAAADE1NjQEAAAAMTU2NQQAAAAx + NTY2BAAAADE1NjcEAAAAMTU2OAQAAAAxNTY5BAAAADE1NzAEAAAAMTU3MQQAAAAxNTcyBAAAADE1 + NzMEAAAAMTU3NAQAAAAxNTc1BAAAADE1NzYEAAAAMTU3NwQAAAAxNTc4BAAAADE1NzkEAAAAMTU4 + MAQAAAAxNTgxBAAAADE1ODIEAAAAMTU4MwQAAAAxNTg0BAAAADE1ODUEAAAAMTU4NgQAAAAxNTg3 + BAAAADE1ODgEAAAAMTU4OQQAAAAxNTkwBAAAADE1OTEEAAAAMTU5MgQAAAAxNTkzBAAAADE1OTQE + AAAAMTU5NQQAAAAxNTk2BAAAADE1OTcEAAAAMTU5OAQAAAAxNTk5BAAAADE2MDAEAAAAMTYwMQQA + AAAxNjAyBAAAADE2MDMEAAAAMTYwNAQAAAAxNjA1BAAAADE2MDYEAAAAMTYwNwQAAAAxNjA4BAAA + ADE2MDkEAAAAMTYxMAQAAAAxNjExBAAAADE2MTIEAAAAMTYxMwQAAAAxNjE0BAAAADE2MTUEAAAA + MTYxNgQAAAAxNjE3BAAAADE2MTgEAAAAMTYxOQQAAAAxNjIwBAAAADE2MjEEAAAAMTYyMgQAAAAx + NjIzBAAAADE2MjQEAAAAMTYyNQQAAAAxNjI2BAAAADE2MjcEAAAAMTYyOAQAAAAxNjI5BAAAADE2 + MzAEAAAAMTYzMQQAAAAxNjMyBAAAADE2MzMEAAAAMTYzNAQAAAAxNjM1BAAAADE2MzYEAAAAMTYz + NwQAAAAxNjM4BAAAADE2MzkEAAAAMTY0MAQAAAAxNjQxBAAAADE2NDIEAAAAMTY0MwQAAAAxNjQ0 + BAAAADE2NDUEAAAAMTY0NgQAAAAxNjQ3BAAAADE2NDgEAAAAMTY0OQQAAAAxNjUwBAAAADE2NTEE + AAAAMTY1MgQAAAAxNjUzBAAAADE2NTQEAAAAMTY1NQQAAAAxNjU2BAAAADE2NTcEAAAAMTY1OAQA + AAAxNjU5BAAAADE2NjAEAAAAMTY2MQQAAAAxNjYyBAAAADE2NjMEAAAAMTY2NAQAAAAxNjY1BAAA + ADE2NjYEAAAAMTY2NwQAAAAxNjY4BAAAADE2NjkEAAAAMTY3MAQAAAAxNjcxBAAAADE2NzIEAAAA + MTY3MwQAAAAxNjc0BAAAADE2NzUEAAAAMTY3NgQAAAAxNjc3BAAAADE2NzgEAAAAMTY3OQQAAAAx + NjgwBAAAADE2ODEEAAAAMTY4MgQAAAAxNjgzBAAAADE2ODQEAAAAMTY4NQQAAAAxNjg2BAAAADE2 + ODcEAAAAMTY4OAQAAAAxNjg5BAAAADE2OTAEAAAAMTY5MQQAAAAxNjkyBAAAADE2OTMEAAAAMTY5 + NAQAAAAxNjk1BAAAADE2OTYEAAAAMTY5NwQAAAAxNjk4BAAAADE2OTkEAAAAMTcwMAQAAAAxNzAx + BAAAADE3MDIEAAAAMTcwMwQAAAAxNzA0BAAAADE3MDUEAAAAMTcwNgQAAAAxNzA3BAAAADE3MDgE + AAAAMTcwOQQAAAAxNzEwBAAAADE3MTEEAAAAMTcxMgQAAAAxNzEzBAAAADE3MTQEAAAAMTcxNQQA + AAAxNzE2BAAAADE3MTcEAAAAMTcxOAQAAAAxNzE5BAAAADE3MjAEAAAAMTcyMQQAAAAxNzIyBAAA + ADE3MjMEAAAAMTcyNAQAAAAxNzI1BAAAADE3MjYEAAAAMTcyNwQAAAAxNzI4BAAAADE3MjkEAAAA + MTczMAQAAAAxNzMxBAAAADE3MzIEAAAAMTczMwQAAAAxNzM0BAAAADE3MzUEAAAAMTczNgQAAAAx + NzM3BAAAADE3MzgEAAAAMTczOQQAAAAxNzQwBAAAADE3NDEEAAAAMTc0MgQAAAAxNzQzBAAAADE3 + NDQEAAAAMTc0NQQAAAAxNzQ2BAAAADE3NDcEAAAAMTc0OAQAAAAxNzQ5BAAAADE3NTAEAAAAMTc1 + MQQAAAAxNzUyBAAAADE3NTMEAAAAMTc1NAQAAAAxNzU1BAAAADE3NTYEAAAAMTc1NwQAAAAxNzU4 + BAAAADE3NTkEAAAAMTc2MAQAAAAxNzYxBAAAADE3NjIEAAAAMTc2MwQAAAAxNzY0BAAAADE3NjUE + AAAAMTc2NgQAAAAxNzY3BAAAADE3NjgEAAAAMTc2OQQAAAAxNzcwBAAAADE3NzEEAAAAMTc3MgQA + AAAxNzczBAAAADE3NzQEAAAAMTc3NQQAAAAxNzc2BAAAADE3NzcEAAAAMTc3OAQAAAAxNzc5BAAA + ADE3ODAEAAAAMTc4MQQAAAAxNzgyBAAAADE3ODMEAAAAMTc4NAQAAAAxNzg1BAAAADE3ODYEAAAA + MTc4NwQAAAAxNzg4BAAAADE3ODkEAAAAMTc5MAQAAAAxNzkxBAAAADE3OTIEAAAAMTc5MwQAAAAx + Nzk0BAAAADE3OTUEAAAAMTc5NgQAAAAxNzk3BAAAADE3OTgEAAAAMTc5OQQAAAAxODAwBAAAADE4 + MDEEAAAAMTgwMgQAAAAxODAzBAAAADE4MDQEAAAAMTgwNQQAAAAxODA2BAAAADE4MDcEAAAAMTgw + OAQAAAAxODA5BAAAADE4MTAEAAAAMTgxMQQAAAAxODEyBAAAADE4MTMEAAAAMTgxNAQAAAAxODE1 + BAAAADE4MTYEAAAAMTgxNwQAAAAxODE4BAAAADE4MTkEAAAAMTgyMAQAAAAxODIxBAAAADE4MjIE + AAAAMTgyMwQAAAAxODI0BAAAADE4MjUEAAAAMTgyNgQAAAAxODI3BAAAADE4MjgEAAAAMTgyOQQA + AAAxODMwBAAAADE4MzEEAAAAMTgzMgQAAAAxODMzBAAAADE4MzQEAAAAMTgzNQQAAAAxODM2BAAA + ADE4MzcEAAAAMTgzOAQAAAAxODM5BAAAADE4NDAEAAAAMTg0MQQAAAAxODQyBAAAADE4NDMEAAAA + MTg0NAQAAAAxODQ1BAAAADE4NDYEAAAAMTg0NwQAAAAxODQ4BAAAADE4NDkEAAAAMTg1MAQAAAAx + ODUxBAAAADE4NTIEAAAAMTg1MwQAAAAxODU0BAAAADE4NTUEAAAAMTg1NgQAAAAxODU3BAAAADE4 + NTgEAAAAMTg1OQQAAAAxODYwBAAAADE4NjEEAAAAMTg2MgQAAAAxODYzBAAAADE4NjQEAAAAMTg2 + NQQAAAAxODY2BAAAADE4NjcEAAAAMTg2OAQAAAAxODY5BAAAADE4NzAEAAAAMTg3MQQAAAAxODcy + BAAAADE4NzMEAAAAMTg3NAQAAAAxODc1BAAAADE4NzYEAAAAMTg3NwQAAAAxODc4BAAAADE4NzkE + AAAAMTg4MAQAAAAxODgxBAAAADE4ODIEAAAAMTg4MwQAAAAxODg0BAAAADE4ODUEAAAAMTg4NgQA + AAAxODg3BAAAADE4ODgEAAAAMTg4OQQAAAAxODkwBAAAADE4OTEEAAAAMTg5MgQAAAAxODkzBAAA + ADE4OTQEAAAAMTg5NQQAAAAxODk2BAAAADE4OTcEAAAAMTg5OAQAAAAxODk5BAAAADE5MDAEAAAA + MTkwMQQAAAAxOTAyBAAAADE5MDMEAAAAMTkwNAQAAAAxOTA1BAAAADE5MDYEAAAAMTkwNwQAAAAx + OTA4BAAAADE5MDkEAAAAMTkxMAQAAAAxOTExBAAAADE5MTIEAAAAMTkxMwQAAAAxOTE0BAAAADE5 + MTUEAAAAMTkxNgQAAAAxOTE3BAAAADE5MTgEAAAAMTkxOQQAAAAxOTIwBAAAADE5MjEEAAAAMTky + MgQAAAAxOTIzBAAAADE5MjQEAAAAMTkyNQQAAAAxOTI2BAAAADE5MjcEAAAAMTkyOAQAAAAxOTI5 + BAAAADE5MzAEAAAAMTkzMQQAAAAxOTMyBAAAADE5MzMEAAAAMTkzNAQAAAAxOTM1BAAAADE5MzYE + AAAAMTkzNwQAAAAxOTM4BAAAADE5MzkEAAAAMTk0MAQAAAAxOTQxBAAAADE5NDIEAAAAMTk0MwQA + AAAxOTQ0BAAAADE5NDUEAAAAMTk0NgQAAAAxOTQ3BAAAADE5NDgEAAAAMTk0OQQAAAAxOTUwBAAA + ADE5NTEEAAAAMTk1MgQAAAAxOTUzBAAAADE5NTQEAAAAMTk1NQQAAAAxOTU2BAAAADE5NTcEAAAA + MTk1OAQAAAAxOTU5BAAAADE5NjAEAAAAMTk2MQQAAAAxOTYyBAAAADE5NjMEAAAAMTk2NAQAAAAx + OTY1BAAAADE5NjYEAAAAMTk2NwQAAAAxOTY4BAAAADE5NjkEAAAAMTk3MAQAAAAxOTcxBAAAADE5 + NzIEAAAAMTk3MwQAAAAxOTc0BAAAADE5NzUEAAAAMTk3NgQAAAAxOTc3BAAAADE5NzgEAAAAMTk3 + OQQAAAAxOTgwBAAAADE5ODEEAAAAMTk4MgQAAAAxOTgzBAAAADE5ODQEAAAAMTk4NQQAAAAxOTg2 + BAAAADE5ODcEAAAAMTk4OAQAAAAxOTg5BAAAADE5OTAEAAAAMTk5MQQAAAAxOTkyBAAAADE5OTME + AAAAMTk5NAQAAAAxOTk1BAAAADE5OTYEAAAAMTk5NwQAAAAxOTk4BAAAADE5OTkVABWO+gEVjvoB + LBXQDxUAFQYVBhwYDHp6bGd5eGE1LjR5YRgMMDExY3FhbjQueXpzFgAW0A8YDHp6bGd5eGE1LjR5 + YRgMMDExY3FhbjQueXpzAAAAAwAAANAPAQwAAAB2MWtnNWhtci5maGoMAAAAZG5zdGNwbHYuZWRr + DAAAAG1ta3lucHR0Lmw0awwAAAB5c3E1d2NrZy5idG8MAAAAcHJlZXpmdGwubXEzDAAAAGdmdXg0 + MWF2LmNvegwAAABnaHpnMmNqZS4yaDEMAAAAM2R0dngwMWkuZ2tyDAAAAGV1emQxYjQxLmJxMgwA + AAA0YXRkMnpuby5nNDEMAAAAeWtkc240dWkuYjNlDAAAAHRud2tmaXNkLnFqNQwAAAB2ZmtpbGsy + dS4xYjQMAAAAdWN0MnIzdG0ubjEwDAAAAGRjdHdocWNvLnZnegwAAABhc2hvYXZvMS5vamYMAAAA + dWdzcWJicHMuNXQyDAAAADBwcHlyNGVoLmhtcQwAAABsNWRheHZ1cy5wcDIMAAAAa3d3MTFwMmEu + ZHhvDAAAAHNobWx6YzNpLnpkMAwAAABraTJva2FteC5hc2QMAAAAaTFiYnUyd2IuZGpqDAAAADJ5 + dnZ1ZnRsLm1lcQwAAABmZzB4Y2xoay5odGgMAAAAY2l6cHh1c20ubDQzDAAAAGFtcnRlMGxhLjJ0 + cwwAAAA1ZDUzZWY1NC5tMHkMAAAAcmxpczR4NG4ubXp6DAAAAHp5aGRjdnZsLnhieAwAAAB4ZDR3 + MGZxZi5sMHMMAAAAdnFzeWFoNDAuYmFuDAAAAGtvYW1raWJxLmtvcgwAAABzNHBtdTI0dC5ia3AM + AAAAMzE1ZzI0aGsucTQ0DAAAAHN3aDVxZmVnLnduagwAAAB3Z2Z4d3dmNC5jMmsMAAAAMWpwMmls + d3IubDVzDAAAAGNvcW90NHU1LmhncQwAAABsaXgzZ2dmaS5leG0MAAAAcnhlbnNva3UuamlmDAAA + AGUya2d5aWQ0LmYwYwwAAABkZWs1NHB4bC5pYmoMAAAAdTRpMDNiYXAubjJ4DAAAADVqd3Yyc2M1 + LjJydAwAAAB1ZzR6NGxtcC4xMzAMAAAAMW5lMXVjbmgua2gzDAAAADQzb3N5cjVuLmpzaQwAAAB1 + NWpicGFmMi5mcjAMAAAAbWMxY2FvYmcuMW9xDAAAAGJlemVteHZyLmlhZwwAAABleHJ0Z2xhMS4x + dTEMAAAAb21waWxlYWwucjFnDAAAAGg0bXoxdmFiLmJlbgwAAAByZ3BkYWx2dy5kaXgMAAAANW1p + b2NiNWsuaHR0DAAAAGt0c25mdnBlLnEwZQwAAABjNDFoYWV5Yi5zdW4MAAAAaHVobGZpdTMubG5q + DAAAADBlb2F2Y3BvLmxwNQwAAABrajQ1ZXpyeC5tZTIMAAAAYXNtejVvNW0ueXVtDAAAAHN5ZGJq + cG9uLmRmeQwAAAB5dHc1Y3FtaS5iZGMMAAAAcTN6M3JlamQuMHRmDAAAAG8zdHB2cmJkLmtncAwA + AABpbWp1MWcxay40bWQMAAAAaGVwdzF0ankuZGRyDAAAADJic2NpYWd6LmF1ZAwAAABwdWN5bWFl + di5xajAMAAAAb29ncmtlY3kuMGdiDAAAAHZnMXBjNHd6LmFoeAwAAAB3ZHRkcXRnYy5oNXAMAAAA + Y2FieHdwbzAub3pxDAAAADIxcWFjYnRwLmlpdgwAAABqMHltdWJpYS40amwMAAAAMmUzeWliNXku + b294DAAAAGIxMjF0YnlvLjFtZgwAAAAyZWVpeXRteC5jMmEMAAAAaXdramt2djQudWcyDAAAAGh4 + aGgwb3gwLmh4ZwwAAABkcWFpanYyZi5mYTQMAAAAejJ2YjNqbWEudjUzDAAAAHBzNHZqdHhwLnNj + NAwAAAAzMHlyMW1kZS5lZGMMAAAAeGlhZ2UzazQuZTRlDAAAADRoNG93YWFiLmh5cAwAAABiejR0 + M2xkYy5ybnIMAAAANHFhZ2cwY3ouMG12DAAAAHB4aWxodWtxLm9jcAwAAAB6c2hjMXAxeC5yY2wM + AAAAMWphMXlzNW0uYXFnDAAAAHQ1ZGh0c2txLnVpdgwAAAB4cm5mZGJveS5mdmEMAAAAdnp6MDJw + YWQuMHdrDAAAAHB2eHNpNXRwLnFzdAwAAAB5MnZhdG1iMS5vZTUMAAAAYW1taWp6bjAuYXMxDAAA + AGt3dnVlMG0yLm01cQwAAABiNDVyYzF2di5xZjQMAAAAdWJwMDBxYWYuNDNzDAAAAHdybXpvaTFu + Lm1yZAwAAAB6NDBpY3hmMS54YTQMAAAAY241eXkxaDUuYWh0DAAAAGRkbjNmaXF0LmR6YwwAAABv + dXJ4ZTJrcS5mam4MAAAANXgzMXpwM2MuZ2pqDAAAAGdtMW5oZXBzLmJzYgwAAABmbWZ4cnRsZS5j + MXQMAAAAenZwYW1hc3kuemRwDAAAAHV0empqb2VmLnBscgwAAAB2Z3l3bmt2Zi5hNHMMAAAAY2lu + eG0zYXouYXkyDAAAAGp6YnF5czBtLmdzZwwAAAAxeGltM2lwdS4xYmsMAAAAYTRzZDU0aW0ueWIz + DAAAAGV6YXQwZ2dsLnVqMgwAAAB2cWxmM25sMy5ieGUMAAAAYXFjNXUzeHouNW5pDAAAAGlxYWYw + eHZuLmQ1bwwAAAB3YzJyM3pmdi5zY3AMAAAAbHJxbHp1bmIuMW90DAAAADFvY2FnM2Y1LnBxbQwA + AAB6YmIxaDJ5Yy5kZGoMAAAAbWFreDB4c2oud2NpDAAAADNyZ3RmamdsLmg0cAwAAAB1M2hyMGFn + NC5ndHQMAAAAcjRqZmlxdTIuZmJpDAAAAGllaXoyNTBqLmswdgwAAAB1cjR4YjFtcC56dmUMAAAA + MjVuZ3FqeWgueWp2DAAAAGQwZDRyYnJmLjVnagwAAAAxb2ZjaGZkNC53NGwMAAAAa25sYXRpYWcu + eTV2DAAAAGtyb3dza2xkLm5sYgwAAABlZWl1Mnhnbi5ldWQMAAAAbGVyeWt1dWUuYnl4DAAAAG9u + eDEwa2dnLnVnawwAAAB3Z2NlYjIwYS5jcm4MAAAAb3NycHMyczQucG95DAAAAHkyc2FtZTR4LmZx + cwwAAABkc2kydGRsMi5rdHUMAAAAc3FyMHAyNGcuMTJrDAAAAG1zcmt0ejNoLnJuaAwAAAB1YjR1 + dmNpbC5ocjAMAAAANTFxb2tiNGEuc29vDAAAAHVxcDR2dWhsLnZleAwAAAB4aHExcTVrbC5ydDEM + AAAAZ3h3aDNzdnQubjFvDAAAAGYza20ycXNwLmdtdgwAAAAxaHJjcHI1ZC5hc24MAAAAMXp5MzB6 + M2EubXpsDAAAAGhvc2R5b2ozLnJnNAwAAAA1anRoam14ZC5kZXYMAAAAdmhreTVrMGkuYm9pDAAA + AG5tcGVsdjEzLjIxNQwAAAA0ZXp5czFmZy5mcnQMAAAAYWNlYmtlMTUuMzJlDAAAAHdtbXBobjNw + LjNidQwAAABidHNmZXJpcS5naXIMAAAAeWQwbzJ1emsubHpwDAAAAGwzbmdsYXQyLjIzeAwAAABy + NGdob3hxYi5veHgMAAAAdnp2dG9vMXEucXJzDAAAADRoa3djbmRnLmVvYwwAAAB6MDFjMm55ei55 + ZHoMAAAAem1vcjExeDQucTAyDAAAAGI1eHZ0YjMzLjFxbAwAAABxcjNjbXluNS5vcGUMAAAAbTVj + dmJoMnouYjF2DAAAAGJrMWZybG4zLmp4cQwAAAB5c3pleWdkbS5zZjIMAAAAbWJ3Z2xiNTQuZWRi + DAAAAHFjMWJseTNuLjMxZQwAAABhamMwaWtycy56dXYMAAAAc2VjYm5yankuMXdpDAAAADUydWFs + aGFwLml5MwwAAAA0b2pzcXlyay4wcmwMAAAAeWxrNG9udncuc2JwDAAAAGNjNTJhdmh1LnAxZQwA + AABvdmF1ZmVoZi50bHIMAAAAdzJmbGZtYWYuc2RsDAAAAHZhY2tvaWN0LnZ3YgwAAAB5dHRhaHdi + eS4waGUMAAAAcHpiY3I1ZGkud3U1DAAAAGluajBueGpiLmkxdAwAAABleGZoeWIzby4ya3oMAAAA + NTFuY295dDQubGxjDAAAAHFkamUzbmZiLjFyMAwAAABkeHl5NTRtei4wcDAMAAAAZm9iZXcwbHgu + bnViDAAAAHB2ZDJjamdhLmhnYQwAAAAwcHNhMWJmNC5qejAMAAAAaXVsM2d6eGouem9tDAAAAHY0 + MG5rZXByLmlycgwAAAB0MWIxcmQwZi56YmoMAAAAemJ2NWJncTAuMjB2DAAAAGhkb3UwbTBpLnlv + dwwAAAAzZTFzaDQxay5pbWwMAAAAZW12b3pjeG4ubGtsDAAAAGwycHp1MXBrLnBnbAwAAABjMWhv + cXJtZi5na3EMAAAAeG1ma3R4M3Iua3g0DAAAAHB5NXR2eWFtLmRsegwAAABkZ2l1ZXlmbS5taXMM + AAAAZG5wZzN0ZGMueGhjDAAAAHV6d256Y3FhLm94egwAAAB0YXoxdm5kci5uNHAMAAAAdGFwdnB0 + aHIueXdzDAAAAGRwMXk1anZ0Lmc1dQwAAAA0M2V1dnFkZC51emkMAAAAMDIwbG0xMGgud3dlDAAA + AGNkM2dtbWVpLmwxZgwAAAB4ZW1tM2VkcS54enQMAAAANHV3M3d4dHUubnAxDAAAADNjbGtrdmQy + LnJsbgwAAAB1NHRpajN4ZS5vY20MAAAANWdicTFxaHouM3dyDAAAAGpvZXJnd3cyLm5mMgwAAAB2 + MnVqbXd0bi5pZngMAAAAc3lkb3hrZncuZ253DAAAAGJ1dzE0bGQ1LmdmcwwAAAB3M2FrbGVxdS52 + Z2kMAAAAY2NwaDF3ZDIueGR5DAAAADBnMG9vcW4zLnZwaQwAAABjcmFmMGYwbC5icWQMAAAAcHBl + ZnVobjAuM2hmDAAAAGljemt4NHozLmhjaAwAAABncTRhY25laC5pYW8MAAAAbWQ1cXRwbXcub3pt + DAAAAG5jY3ZtZTMwLndvagwAAABpbWVyYW5yaC54aTUMAAAAb2J4ZXZsdXIuZjBlDAAAADVoZ3p1 + c3ZrLmVlYgwAAABzazA0Y215bC5keXoMAAAANHh1cXZ2M3ouaWMxDAAAAHZveHV1b2ZxLm1jcQwA + AAB0djUzc21idy5hbTAMAAAAcHU0azJ2aXYuMHJyDAAAAGtubHNvaW1uLnZsdgwAAABlMGQ0NGo0 + ei53NG4MAAAAcDBoaWZ3dDEudjVtDAAAAHJoY2F6c3FzLmx2aAwAAABheWFtY2RicS5zMHkMAAAA + Ynh1Z3FsbDEubTFlDAAAADB4Y3V4b2ZtLm94dgwAAAB2cXZ2bXdjcS5sMzEMAAAAaG5mbzRwd2Iu + cjBiDAAAAHV1eDNmaHBzLmw1MQwAAABpNWpoeWJncy5tdGkMAAAAb3pmNXIza2Eudnh2DAAAAGR6 + dDR4bmNwLmJldQwAAABqNGpnNDRlYS5jM3IMAAAAYmlvajVxYXguNGNlDAAAAHVtdDAwcXZyLjJm + bwwAAABhZXprenJwby5mZ3cMAAAAZG40ZmJxNHcuajF4DAAAAGRkeXp2bnFkLmNtcgwAAABhbXIy + ZWx1Mi5yaGcMAAAAZmY0cTJiemkuc20xDAAAADU0aXZ2ancwLnFiZQwAAAAwMWVid2p0bi53eXkM + AAAAaGJ1bWRqZGkuYmZ5DAAAAGxsdmNlMTBhLnF0ZQwAAAAxeXF6MXN1Yi4wb2YMAAAAa3RsbXh4 + ZTUucHJjDAAAAGM0NGMzemd4Lmd4dAwAAABwd3h2MnJibC4zY3gMAAAAMjFuNWl1bm4ubzFiDAAA + AHNpM2JnYmUxLm5hdAwAAAB3cXRieWkzeS5td2IMAAAAcDBrd2NkcGkucHphDAAAAG53dnRjcWIw + LmMwYwwAAAA1eTRmbnIzZi5wZHgMAAAAeWlxdHdlenkuZjExDAAAAHJwbnZuenpyLm40cgwAAABu + a3ExdXExZi53MmsMAAAAZ3cxbHBjbmYueTN2DAAAADBwbHVhbDJ1LmpkMgwAAAB1a2RsMzAwZC5z + b3AMAAAAd2NubG92aHcuMWxiDAAAAGNwZXVjcjN6LnZ6egwAAABic2tqemJnYy41ajQMAAAANDNk + eml5ZHYubXZpDAAAAHd5anJ5d3FrLmtycgwAAABieTF0NHVucC54YmsMAAAAaWloZWVmbWYudnFt + DAAAADJrdWZ6eWtxLmE1MgwAAABkaG01eDFkMi50dmQMAAAAbmc0NGVoNDMuZzV4DAAAAGp6cGZt + M21qLnJreAwAAABwcXR1bHdwMS5iYXUMAAAAYmlwaWlvemcucjBpDAAAAGxyYzJnNHNrLnJudwwA + AAA0NWhnZHhxZS5scHEMAAAAd3B4emZoZWQubDUxDAAAAHg0MTJuand6LmJ4eQwAAABwdGZieWxj + Yy5tYnEMAAAAeXA0eHNuZ3guZXlvDAAAAG16NTJ5cXAwLnBkZQwAAAByajJyZGhhei5za3QMAAAA + Y3pobjJzZ3Iub2J6DAAAAHFveGVweWE0LnR4MgwAAAB6bDRoZXBuby55eTIMAAAAYWh1cHFwMHou + d2NlDAAAAHltMzBuajF3LnAydAwAAAAzcDBubzNvYy5xNG4MAAAAMGZncXVya3MuY2RhDAAAAHh3 + MGFxY3VyLnEycAwAAAB6a2ZzZnRveC4xYWUMAAAAbHZoZ3gyZ2wuZ2wzDAAAAHlmcnRtamViLnhz + cwwAAABoYTBqb25jeS5hNWoMAAAAc3VqNXl1NG0uMmV0DAAAAHZqb3NnMDI0LmswdwwAAABxcGx0 + cXd1cS5vbWYMAAAANGZhcjBnd3ouemJsDAAAAGNibGVrY2Z6LmxkbQwAAABlMHF1dm5qYi5rbGYM + AAAAZnp3NW12cjQuNHNqDAAAADJpbGN0MzVtLnpucQwAAABxb2FrZnk0dy4xeWMMAAAAZ3N2bDA1 + bnIuZGVvDAAAADRud2kzb3l2LnVybgwAAABheDMyZ2N1by5sanEMAAAANG5xMnBvY2YuM2RwDAAA + AHlncHNodmJ0LjNmcAwAAABrZjEwZTVqdy5iYjIMAAAAMHoxbTFjNGoud3l0DAAAAG9waWt3aWpo + LnM0egwAAABkZmhydTQway52eXEMAAAAem1zemMxcWIuZG51DAAAAGF5NW5rMTN4LnJmdwwAAABl + bDFjajBtaC5kZGYMAAAAbmNrdGh4bDIua2ZoDAAAAGtuZnoxMTVlLmU1awwAAABoZGt3NWdnai5h + Zm0MAAAAczN4c2FtbHcuZG55DAAAAHUwZDFxbWRlLm9ubgwAAAAyMnlodDV0cy40eHEMAAAAbXpt + MGl2ZXkudTEzDAAAAGExNG8yd3p2LmowbAwAAABwZzBuMzI0ZC5mejIMAAAAdGkxM2M1MW8uNXps + DAAAAHphYnYxaTVjLmJiegwAAAB0ZWh3cHJldi55bjIMAAAAenpsZ3l4YTUuNHlhDAAAADVjNTI1 + MGNmLmZzeQwAAAB6dGFzcms1dC5peWoMAAAAdDBuNW5uZXAudnNhDAAAAG55dmVvc3gwLndvcAwA + AABsZ3hjZHRoMC5hbWEMAAAAdGIwb3FwM2wuZXZ3DAAAAGRlY2J1azEzLmxwZQwAAABzZnFjNXJ3 + eS5uZGYMAAAAMnQ1M2p5NWEua2lqDAAAAG12Z2hqdW8xLmdpagwAAAB4MWZodmlrby5wcnoMAAAA + czM1eWVmZ3AuYXVqDAAAAG1vZ2FhYm15Lm9sbQwAAABzZGo0M2g1bS5iZXEMAAAAdHZyaDRuM2wu + a3hxDAAAAGNka3oycnd0LnUxcAwAAAB4enkwaHZvci5nMHEMAAAAbWpscWlrc2wuYml1DAAAAHgz + cWZxNTFxLnh3ZQwAAAAwemZwYWVlYy5rNTIMAAAAY2wzM2xwZWoudGc1DAAAADUxcTRxa2duLmw1 + dAwAAABiNHZucjNqby41d3gMAAAAMXVmb2YxZ3UuYjJoDAAAAG1rbTJ0a2h0LnhheQwAAAA0bWJx + bjVyNC52MGsMAAAAcXZxb2NjeXkuZnlnDAAAADRqbHgwamkxLndqcAwAAABmenlyNXlmbS5wZG8M + AAAAbTVyeXI0ZG4ubGZoDAAAAGxsMXFidHF4LnRidwwAAABtbDQ0em90NC5yaG0MAAAAbjNqcDV2 + Zm8ubjV1DAAAAHh4eW91cm8wLnA0cAwAAABkY2s1MXRwdi5jcWwMAAAAcmRvMmxxYnEueXFsDAAA + AGx2cnEzb2ZjLml2dwwAAABmaHY0MDJyaS55ZWIMAAAAM2h2ZXYxbWsucXdkDAAAAGp2bnRvZWY1 + LnJueQwAAABieXVzeW1kdS5wc2gMAAAAb2lib2x2cHAucGplDAAAAGZ5NGFnMGgzLmR6ZAwAAABx + ZmlleHpsZy5mMngMAAAAd3V3Yno1anYucHZ6DAAAAG9qNHJoNXN4LmgwawwAAAA0Mm52c2k1dS4y + ZG8MAAAAMnZ4dTVsZGMua295DAAAAHdsbGxxdXptLmR4NQwAAAB3M3ZweGxyYy4yM3kMAAAAaGFp + Y2gza2YucmVnDAAAAHdvZGQ0b2V2LndpYgwAAAByMGFvc3FvaS5ocmwMAAAAc3k0YnhsdnIuYm14 + DAAAAHJuMXU1MXd1LmhsZQwAAABqazVudm90ei5iM2QMAAAAb3BvY3V3ZHUubjVwDAAAAGt2MHB2 + dWl3LnZidQwAAABoMjQwNXptZC5kNG0MAAAAdXl0aXZzZW8udjR3DAAAAHdiZ29md3phLmZxZAwA + AABzcWRpcHl1dS5qcXYMAAAANG8wYmp2YWcuNTM1DAAAAGdhNHBkc3BhLjUzYgwAAABiaXBiaTVj + di5ham4MAAAAeHhyaWEwaGMudHZmDAAAAHp2ZXVvZWN6LjRrZgwAAAB5eWFseW50Mi50bWEMAAAA + ZDIxbG41NTEubjBxDAAAAGp3Z29mbGYzLnlwMAwAAAA0bWpwc3diYy5udGcMAAAAMnMya3Bjc2Mu + cW16DAAAAGY0cjJmdnJ5Lnp1awwAAAA0eWhtcTVheS5uczEMAAAAd3hmMjVlZHAuaDBzDAAAAGUy + d3htMXF3Lm96egwAAAAyc2M0NXB3aS4xZXcMAAAAanEzbWp6NXcuYTRsDAAAADJncGFua2d4Lnlx + egwAAABreHNtZWNycS5oeGkMAAAAMnhlMmlzM28uMXUyDAAAADRpd3Brb3MzLnp4ZgwAAAAwbmI1 + Z2Nwbi5paWMMAAAAcm5tbDUwMDEuMWN5DAAAAGplcWZoZjBuLnltegwAAABzem9yc2tlcS54cjQM + AAAAbjRiMjB4MmUud2ZvDAAAAG11ZHlyYXUyLmtnMgwAAABoMTRhZG51ci5uc2cMAAAAZDJnNWdk + MjAucjR1DAAAADRneGNodXMxLjFvdAwAAABva2t0dnFmdC56cmsMAAAAbDBtbXp2bTMuZGd5DAAA + AGFtY3hma2J6LnZobAwAAABzMjNrYjNqYS5zbGcMAAAAZ3h4b20za3MueG5oDAAAAHV6bHdlbGo0 + LjRyagwAAAAycHRjMDJzay5jbGYMAAAANGtiZmMxemQuYXcxDAAAADBha2Roam5rLmF3bAwAAABs + bHNiM3Z3eS5lM3gMAAAAYmp3eHp5YzQueHNwDAAAAGdpM3lsdnJoLnRxcQwAAAAyc2l2YW5iaS5k + aHEMAAAAajIxZ2M0ZTMuM2NsDAAAAGJnMjRpZHh6Lm4yZQwAAAB2b3pnZXJmai5yd3YMAAAAY2py + MXcxdGouazRkDAAAAGdoam5seGVjLjFuegwAAAB2dnllcGFjNC5qNGIMAAAAYWF1dHN2YnYucWRu + DAAAAHF3ZTAwYzJiLjExcQwAAABjYXh2d3AzZy55bjIMAAAAbXJpYzF1YWQuMHJsDAAAAGp0YjVz + ZXF1LmF4MgwAAABzY3pyZ2xlaS5oZnUMAAAAamdseDB3aHcuZW1lDAAAAGR4cG4xa210LmtkbgwA + AABteHplZG1qaS5qcnIMAAAAa3FiajRjNWouYXp3DAAAADR0MnJhejFvLnlqaQwAAAB1a2Z3aTNl + Yy5nemQMAAAAemVjbmx6b2QubDM1DAAAAGVia2JhZDFyLnlocQwAAAB5am1xaXlycC5ld2sMAAAA + Z3ozaWVnNHAuaWQwDAAAADBlbmFvZXQ1LnVvagwAAAB2cGUzZTJwaS5qZHAMAAAANXVsdGpweWQu + c3RvDAAAAHQybmtiNHJlLmkwZwwAAAAxaHI0M2R0di4wc3EMAAAAMXdhZ2pyencueXRxDAAAAHlt + Y3VieWdrLnduZwwAAABibG1tMmdtei52Y2gMAAAAbXM0cm1lZjEuaGxlDAAAAHN1eG9vanFmLmxu + dQwAAABnamFpb2JiMC55cmkMAAAAa3lkbWU1c28ueHRiDAAAAHEydTN1cmh5Lm5zeQwAAAAxeTJm + bHp1dC53M2IMAAAAZnJwbHlwc24ubWFpDAAAADJsbm1hdzRwLnJnegwAAABzeXRkd2J2aS5jd3oM + AAAAeWc1ZTJmemYuZjFoDAAAAGZpYjVnaGZrLndlMAwAAABjMmJ1MTF6eC5jY2UMAAAAYnc1aW1p + YjUuMDJ3DAAAAHRhZTBmb2x5LmxlcAwAAABnamExM254eS41aGUMAAAAengzbWt0bzQuNXV5DAAA + AGVrend6bTMyLnNicwwAAABnZzB6MXh2Yi5mNG0MAAAAczIwNDVkaDQudGJqDAAAADUwcmdoYmhi + LnBzZgwAAAB5ajAxcHAzdS4za2oMAAAAcjFzaHdtYm8uYm9rDAAAADQxYWQxdWFlLmRhdQwAAABk + ZmJ2MDJ1ei4xZTUMAAAAenQyMGs1ZGwubzFqDAAAAGV3Y2Npemp6LnZ6YgwAAABzZDF5cTU1Yy41 + M2cMAAAAaDBpaGZmd2MuY3BvDAAAAHV1NDBraDBkLjR5ZwwAAABkam4yZXczMC5lbmIMAAAAc3Uw + emdtaG0uaHkzDAAAADRhaXRtd2psLnpyYgwAAABzYng1Zmlwbi40cHQMAAAAY2NjeGlicG0ud2Ji + DAAAADBieHVxeDJuLmEzMAwAAAB4ZWxqcGx5dC55dWUMAAAAcXQ0bTJnYXoueXlmDAAAADN4aWJp + Y3R4LmJ1ZAwAAABnb3BhMWY0cC5icnAMAAAAcG9oc2pmMDIuaGUyDAAAAGFmYm1peXU0Lnl6bwwA + AAAwbXJsZWdreC5wa2gMAAAAeW5sempseGwubmR2DAAAAGZ0eWNtMTJrLmJkdAwAAABzMWVpa3hv + dy5qZTIMAAAAaG9sYjNjZmkuYW9iDAAAAHp4dDNhc3IxLm40agwAAAB0ZnMxZmxrMy51ZGwMAAAA + ZTJ6ZWZkYzQuNHRvDAAAAHFhdXI1cTFvLmthdQwAAABoNHRjMjVxMi5yNWoMAAAAajBibmhleG8u + YWp0DAAAAHF0cm1rNXV0LjRpMwwAAABrZ2NuZnI0eC5oaGkMAAAAMHRweTNjdnQuaDNiDAAAAHlr + MHBicGkzLmxycgwAAABkand1ZGkyaS5rdW8MAAAAaDRxamo1aWQuNGZtDAAAAGxyNDB0amIwLm8y + cwwAAAB5emxjdTB5bi5pd2UMAAAAMHZlcDViZDUuZ2ZrDAAAAHhtenhibnJnLmY1egwAAAB6bnFx + bWp3dy52aHMMAAAAYmhycmx4YnUucHkwDAAAAGJvcHplMTNvLmxhagwAAABzNGJ4ejBndy51bTMM + AAAAMmgyb3J6ZHAudnUzDAAAAGpkZGs1bWZ1Lm9hawwAAABhdHExanlseC55cXkMAAAAMGV5Y3hm + d2wuaWY1DAAAADBnMmpqbXZnLnUyaQwAAABlMGJtdXJ5bi5sZnMMAAAAaWRmazE0aTUueG5tDAAA + AGVzMndic3RzLmxmdgwAAABycXVyb3V1aS54eGEMAAAAdGNxMXJjejIucXhtDAAAAGRoeXRzdXhl + LjU1egwAAAByMGNzeWxodC5samYMAAAAandndzNmM2MuaWZiDAAAAHptcGVvbHkzLjR0MwwAAAB6 + aXdtNHRtbS5yd2oMAAAAeXhrdnhneTEud3RhDAAAAHM0emF4cWE1LnpvcwwAAAB4cW5icmkwdC5t + bnEMAAAAMmV2M2MzZ3AuZHpmDAAAAHBxNXZiem9wLmh3agwAAABjM3Qzd3IzMy5qY3gMAAAANXhq + a2YxenMudTF2DAAAAGtkbXVvYzNrLmhodAwAAABhZ2RkY3V2bC5lbnoMAAAAMnZseXYyYzUucWp1 + DAAAADV2c29rY2I0LnBocgwAAABiZmZnNWZmby40dGQMAAAAa2thY25xdHkuMnptDAAAAHcxdGs0 + cjUxLjBkNAwAAABudG5sbmJ4bi51c2sMAAAAcHQya3pobGsucTRwDAAAAHd1cmcyb2IzLjVjMwwA + AAA1cXA0MmdvaS50cGMMAAAAdGQ1dnBla3EuM2p0DAAAAHdwd20zY24xLmNqegwAAABtYWZhdnRk + Yi56cXUMAAAAcWZuams0a28ucXpkDAAAAGRja2wxdTN3LmtwYQwAAAAxc3Jha291MS5rMG8MAAAA + YWRrazQwdXYuaXhkDAAAAG5uMXE0MGxvLnYzYgwAAABpY2JnbWF3by5hdnEMAAAAYTRkMWZleTIu + NXNvDAAAAGcxejVzMWJ4LndwYQwAAAAwZWt1djU1Mi5mczAMAAAAaWcxNTFwZngua29tDAAAAHZ6 + cGJocDBnLnBxZAwAAABmMDV3dmUzby5xZDQMAAAAMWV6dWt0cXIudmZvDAAAAHpxbXB1aTRtLjNq + MwwAAABjNXFkaXBpMy55cGsMAAAAbnhvZXhvbG4udHFtDAAAAG8wazQxcTFtLmwydgwAAAA1Ymp5 + dzRibi4xNDIMAAAAZjNkZGRwaXIuM3Z5DAAAAGpnbzR6YWhsLnZpNAwAAAA0ZGMzcnNteC4zMHEM + AAAAZGNxMGozNGEuY2dqDAAAAHBhNWRsa3NzLmNxcAwAAABobGhhZXFsMy5zMG4MAAAAZHlweWJ0 + cWQuMTBpDAAAAG50NDBmZ3JqLmRqeQwAAAAzZ3V1emJubC4yMnIMAAAAd2Qyc29zcHcuMWVpDAAA + ADRnNWxhc2liLmVyMQwAAAB6aGtlYmxkcC5xbW0MAAAANHl3cGRxMWguZHpuDAAAAGpjMmJ4aHRu + Lmw1cgwAAAB6djJqZG93cS5reW4MAAAAM2N0cXZncnkuMTFvDAAAADMyMjV2cXpoLms0YwwAAABr + b2gxMGMxMC5mbWEMAAAAemlieGR1ZXcuNXJjDAAAAHZ6cTFtYmFyLjEyZgwAAAB5cnBucDJnZy5p + NGsMAAAAY3N0MGl4cXUudmNnDAAAAG5veXkzY3p6LmwybwwAAABvdmdvaWs1cS54c3MMAAAAaW5x + cHhxMHoueWdpDAAAAGJ0ZGtnazBrLnZxcQwAAABjazFzbXlnei5xb3UMAAAAeXBicndkd3YubWFi + DAAAAGlmYml0ejJ1LmpvMAwAAAB5YXcwMjUxMi5xY2UMAAAAYWZ1cTNzb3IubGRiDAAAAHFyeXJh + MWFsLjJwdQwAAAAzZ3cwdGtrdy5sNWEMAAAAdXF2eGJ6NGMuenhmDAAAAGZ4cTVmZHplLnJ1bwwA + AAB6aTRvZGpvNS52Z2IMAAAAaXJpdmN5c20ubjVpDAAAAG15NHlwcmVoLnVueAwAAAB5c2ZocWpq + dS4xa2UMAAAAMmQwazA0MHkuM2kwDAAAAHk1NWhud29kLnp4dQwAAABsNXV2YTNoaC5oNHAMAAAA + cDVoYXZ2bmMubHo1DAAAAHhraHpzdmZsLjB4dwwAAAA1dDN3cjFhaC5hdW4MAAAAaHdwMDRjZnUu + bWFjDAAAAHJvNHkwMXc1LmowawwAAABrdXozYmN0ai40dG0MAAAAcnR3c2prd3MubzF3DAAAADNj + eXN0cGtuLnZ2YwwAAAAyZWR5M2hrcS56cmsMAAAAczN1emNqeTUueGF0DAAAADM1ZmNndWpwLjNs + dAwAAAAybmEzbXpmei5mY3oMAAAANXllcWphYXouMjBvDAAAADBna29pNHZwLmI1dwwAAAAyZHli + ZWN2NC5iYWUMAAAAaWQxbno1YTUua3d5DAAAAGZzc3ExM3FvLm9yZgwAAAAxeGJxMjBudi5oM2YM + AAAAazRsZ3F4aTAuZjN4DAAAAGgxYTR3MWZoLmRmbQwAAABqYTB0eDFiay53MDAMAAAAbDVmZnhk + YnkuMHVhDAAAADJzZTRhZ3B4Lmc1bAwAAABnbmdzY2l3MS53MGsMAAAAMWZ0bXhrYzMubGF0DAAA + AHNzbWF0b3JiLmJtbAwAAABseHlkajNidS4wYm0MAAAAaGwwaWkxc2suMHAzDAAAAGJhbnJ4MWwx + LmJ2bgwAAABwcnppcGd0eS51MXQMAAAANWFhNWwwcG8ucmUzDAAAAHQzM2VjeHI0LmJpaQwAAABp + bHh6MTRoMC5ycXAMAAAAdWFxMmx1MGsuemF2DAAAAGl6eTM1ZGZiLnluZgwAAABvMjJjYmV2bS5j + bGIMAAAAcGxsNGhjaXYuZHNnDAAAAHRidWl3c3RuLjJneAwAAABnM3dnMmJ0aS4yd2MMAAAAMWNv + NWY1MXIuMjRnDAAAAHNnZG56cXhkLjBqbgwAAAByenh6MTMzei55bW4MAAAAMm95ZWVpajEuMXVs + DAAAAHVmYnZ2MTRjLjBhNQwAAABhYWJnY2VtaC5iZm4MAAAAMXd1eGJhZncubHp6DAAAADFwdDEy + ZGxxLmxzdQwAAAAybjJ2d2U0bi51ajAMAAAAdTFnZ3YzdzAuaHkzDAAAAGlua2kxbXB3LmhkMgwA + AABrc3V5bWx6by5reHgMAAAAbWt4enR0cWMubXR5DAAAADNiNGI1czR0Lnd2bwwAAAB5enVoaGdw + NS5oZnQMAAAAbjNneWM0cTUuZzMwDAAAAGVndW9ldHg0LmNtMAwAAABta2JobmJyZS51djUMAAAA + eWt5eHYwbjQuc3NmDAAAAGw0bmhhYWFsLnFnbQwAAAB6b3hlMGVnZC50MXkMAAAAZnZhbXQycWou + MWVlDAAAAG16Y2J2b2ljLnE0cwwAAABoMmtrZGdsbi5vemYMAAAAYnpkbGhhMTEuczJyDAAAADVj + MWZxb2RmLnBxcwwAAABkanRxcXN1aS55MnYMAAAAYXVpdG13NWEuemZtDAAAAG9kdzEwZ3RsLmFx + NAwAAAB4cHJkdDFwcS52NW0MAAAAbG1qcWtycXYuYjFuDAAAAHBhY21pcjJnLnBkNAwAAABvbGdo + M2F3Zi5qanAMAAAAeXF6bG9uMHQucnMwDAAAAHh6eHNpeGdvLnVocAwAAAB0emt1bG5jaS5ndGcM + AAAAd2tlamFwMHkuemZlDAAAAGwzYnQzb2UwLmxnbAwAAAB6YnVoYmNlci40d2QMAAAAMnFwcDNu + b2QuZmNnDAAAAHZ4M3IydHZ2Lnl1MAwAAAB6NHVidnQxby5xYWkMAAAAemNlc2JuZW4uM3ZyDAAA + ADV5Znh2ZHV1LmhtbwwAAABvbXdjajFoNS5zbnIMAAAAaTJuaG9rZGEuM21zDAAAAHc1aGxwYXg1 + Lms1ZQwAAAB2NHAzcHQ0Zy52Z2oMAAAAMzMwNXFtZGguZngzDAAAAHNycjV2a2liLjN0NQwAAAB2 + cHJ0Z3N6ai4yYWkMAAAAY2dva3pqc2EuYWdwDAAAAGk0MGFzeDN4LjAybQwAAABnMGgxZ3d5aC4y + NDAMAAAAZWIwczBoaGYucjByDAAAAHlscnFua21nLndyZwwAAAA0c3Ayd3J2My40bzIMAAAAcXE1 + Z2ZyZ2YuZTRkDAAAAHprMjF4aHRxLnM1bwwAAAA0aWh3NXEzcC5zMDQMAAAAZmRxdmdmNG8udGxs + DAAAAGYxdnlnbmQzLnF3MwwAAAB4bGN6cWV0Mi5maXoMAAAAamVpNXl0NGEuNHVhDAAAAHJmNGti + ZmdmLndxegwAAAB4bnNoYWJ0aS5oYnQMAAAAenhwcnN4cnkuaGJ6DAAAADFnYWI1dW1kLnN5ZAwA + AABvdm1uem01MS5sNXYMAAAAd3BlZGF0NWcub2thDAAAAGp4YjV3aDU0LjVnZAwAAAAxYTIyZXBj + cS4xMnoMAAAAM2VucDFsaHYueDVhDAAAAGRtd29ocGdpLnJuYgwAAABqdmZ1MGRwMC4weXUMAAAA + Zmt6aHVwcjIudGx1DAAAAGN6Z2l3emV4LmRqYgwAAABxcGptM201ei56dmIMAAAAMHd1d2VobW4u + bW9hDAAAAHkxZ3FtajEzLnFkZAwAAABoc2pwYWlkdS40eWwMAAAAaG52cHdyMWUuaTRrDAAAAHNt + dG1yZHlmLnYwawwAAABrdXBlb3hqbi5mMzAMAAAAZW9ucGNubnguYmIzDAAAAGRvdmh5MXd4Lmhl + YgwAAAAydHRuMXRjby5nZmgMAAAAMmhkbzQ0bjAucmRiDAAAAGVpZTF1dmJtLmxkZgwAAABqenBl + dXduay4wZjQMAAAAZDIxZjVjenYudWN4DAAAAHB5aWZmaTRxLnlxNAwAAABtZXNsNXRldy40dmYM + AAAAc3ZyMDFjcHEudWduDAAAAGpvemx1Mmp4LnJnZwwAAAB4cGhoZWEycy5rbG0MAAAAbnJ3cTVt + NWkuMmx5DAAAAGlqZ3Nnc3Q0LjBmbwwAAAA0dWdmbHVmei5xdGUMAAAAeHkxZG4xMWkucDBsDAAA + AGR0dHdvY2R1LjNuNAwAAABxYW9xMGdhaS5uMW0MAAAAbHNncnB3bXcuemsxDAAAAGUxMHhwb2Jx + LmZnbwwAAAAzbGMydGo0aC5lemIMAAAAa3d3azBydjUuMm8xDAAAAHAya3ZhZGNpLmpkYgwAAAB4 + cmR2bW5sbi52MXcMAAAAYXowYm51bG4ua3drDAAAAGNtaXF5NHZqLmFlMwwAAAAxbmNmMmEwbC5s + MXQMAAAAMzVhM2ZmcmIuZmFnDAAAAGh4bHJpZDIwLmNhbQwAAABhczNwcHNmdS5xd2IMAAAAdjBp + MXZ6ZXguZXduDAAAAHczcHNqZ21iLnYxZwwAAAB4angyNG9uZy56bGYMAAAAM3RnbzFnZnAuYnIx + DAAAAGkxaDJ1b2hqLmt3NQwAAAB4ZGp6YWIway53eXEMAAAAZGphMnowMjEuNTJpDAAAAHBxdHpo + cmNkLm93cgwAAABobXZkaXdndy4wb2cMAAAAM2d5aGd0YzMuanBkDAAAAHgxYWxnZGVuLnd0dgwA + AABqYjBrcGhneC51MHgMAAAAa2kxMjRpdmQuMHhqDAAAAHkxYnpyb3p1LmZqaQwAAABtM20xZGIz + di5ka2IMAAAAZDAzbHB2cWYuaHl3DAAAAHdvcmZyZnhuLjJ0agwAAABjMnJxemk0bC5kdXIMAAAA + MjNoMmtraHEuc2h6DAAAAGxjeXl3Y2ZrLmZjegwAAABleWQ0M2NyYy41d2kMAAAAMmhycWdzM28u + amkyDAAAADJ0eTR1a2tsLjVjcwwAAAB3aHJnbmQ1Yi5lYTAMAAAAamcxa2J2Y2cuYXR2DAAAADFq + cWFyemhiLmNyYgwAAAAwdWhkbWY0NS5meW4MAAAAamIzYW9tMm8uMGhtDAAAAHR1cnppcTRvLmpi + bgwAAAB5c2d0dHN4aS5ucHcMAAAAcDN0eHVtcXIubWFzDAAAAHZqemVlanEzLmsydwwAAABmcG01 + bmdrcy52eDAMAAAAbXBzMXRtcXguM3VvDAAAADVoajFsajJkLnp5cAwAAABtMXhnb3oyay50Z3IM + AAAAZHNpcXpvdGgucnFqDAAAAHFxb3B5d3R5LmhoaQwAAABjaXVsYWtzdC5wdXEMAAAAeWdvNGJ1 + MmsuMnVnDAAAAGZtY2ticm5vLnIxYgwAAABobGhhaDRuby5wcncMAAAAZGI1dm92cGoudXFzDAAA + ADM1MnpoM3h5LjJhYgwAAAAzY3poa3VvMC5penMMAAAAM2YxanljZzMuajB2DAAAAGtiZHIwdzR1 + LmdtdAwAAAB6eDNhNHZsYS51c2sMAAAAc2J1ZmZibjQubzRwDAAAADJjMGZ2c2UzLmt2eQwAAABw + ZWN4MzNjMS56MDQMAAAAa21zYjFrNDIuNXBqDAAAAGNwM3ZianZ0LnU1egwAAAAwbDRkbWhxdC40 + eG4MAAAAYWwzM2piY2MuZ3hrDAAAADNxaXBqeHYxLnhhMAwAAABlaTVjZ3BiMi5qdWEMAAAAZTVv + dWNnd2subW1mDAAAAGVqZmpzMGhzLm1jbAwAAAAzaXhuZWt4bS54d28MAAAAdGRybWdoenoudGNi + DAAAAHU0dzFldjNnLnJ5ZAwAAAByY3Bta3p3ai5lcXcMAAAANWVrbG41MHcuNXM0DAAAAHh4NWx6 + djBtLnV3bQwAAAAwMTFjcWFuNC55enMMAAAAa25iY3JwYmwuZmx6DAAAADUzbXo1d2dvLnVsbQwA + AAB6eTByMGxzci5zMjIMAAAAYWhudGJ4ajQuYmJtDAAAADQybDF3MnlhLmJzawwAAAB6bzAxNW01 + aS50enQMAAAAYmF2YWZndTIucTNlDAAAAGdzaHljcXFmLjFpZAwAAAA1YjAzNXN5ZC4ybGcMAAAA + bHlpZnkwaG4uenh3DAAAAGV0YXBwbGdqLmczYQwAAABtNGp0dXFhdi52ZWwMAAAAcWRvb2t5eHYu + cnF3DAAAAG9qeGI0YWhsLnZjMAwAAAA0eWNqeXd6ai54aWQMAAAAc3ZqdW1uNXguNW9rDAAAADJ4 + amZsMmZhLm9icgwAAABjd2Z0aHBqdC5hcXMMAAAAdGM1M2JxeHMueDRjDAAAAHl4amRnYnYwLm9s + aAwAAABpcW5tNWh0ZS4wd2IMAAAAbGcxeXprNHEuNWpkDAAAADUydG92MmJ6LjVkaAwAAABrYzNx + MWtjMS5qeXkMAAAAZ3NoeHYzeTEuNXR6DAAAAGpydWtvMGNxLnJnYwwAAABlamFydmxmaS41cDUM + AAAAeXgwdGpzeWEudGlvDAAAAGd1MGJ5NGJvLm4weAwAAABrejVraDB6Yy53MGQMAAAAejNwZm5h + eHIuaWF6DAAAAHR5ZWI1YnFqLjN4NQwAAAByd3RzbmJuci56dGEMAAAANXB0dDV5MzQuNWhiDAAA + AGhwZmVwMHFyLmFrYwwAAABiaW5rMHlyYy5qd28MAAAAcG1lenBzamwuamQzDAAAADAzbGVnZHRv + Lmx5eQwAAABiMzNkYWk0My5xZXgMAAAAZGxudHFnbzMubm5xDAAAAGJnaGJoa2VlLnRpcwwAAABy + azBxM3Btay5jNDAMAAAAdnFjYXIxMnUua3pwDAAAADVid2FvZmJuLnVwZwwAAABiZzJremkwZS53 + cGkMAAAAZTU0enhjZnMubHR5DAAAAGVtMDVzMnBpLm90MQwAAABvYjFwMzUxbi54bWwMAAAAMGh1 + a3R4d2wuamV0DAAAAGtiaDF6dWxpLnA0MgwAAAB6b2NrZWtiYy5razAMAAAAd2pwYTFjMnIudmpx + DAAAAHVkbmFrMXlhLjJscQwAAABub3BsenF1Zy5mY3cMAAAAZWdhZGJpd2EuZnN0DAAAAGJ2cmdk + M2tjLmZmYgwAAABybnhrY2xnMy5lcmEMAAAAZGhmeGtoMmwud2wxDAAAAGFyZHBqbDNoLmJvYwwA + AAB3a2gzdWZ4eC55cGoMAAAAeXF5YmJoc2IucHVpDAAAAHRtem41cXlzLnpwcwwAAABhNGVjZ3Zi + Yi51cGsMAAAAem5wMmd6MmoubGwwDAAAAHJwMHJhcHhuLml6cwwAAAA0dHp0ZWRtbC54ZXcMAAAA + bXEwc2Zqem0uMGVyDAAAAGN5Mmx3b24xLnczdwwAAAAxbHV1cm5xYi5qcGUMAAAAc2g1dmdrM3Au + aHRqDAAAAHRlMHduYm8yLmJwcgwAAABteTB1czE1NC51b24MAAAANWhmZ2NyanYuanJjDAAAAGlm + bGxpMHl3LjNkegwAAAA1eWJkamdnaC5nZHEMAAAAY2dqaWFvejUubHlpDAAAAHJ6aXc1MnViLmM0 + ZQwAAAByNG1xMGlzZC4xbWMMAAAAeGJlcW5md2UuNG8xDAAAAHVwdTF3aXN4LnhvaQwAAABoaGd4 + ZHk0cS5qYnYMAAAAcXYzYjBqb3AubWFhDAAAAGR3NGQxZ2hjLjRjMQwAAAB0cHNrdnJyMS5iczAM + AAAAb3h0Z2N1M2EuZ2gxDAAAADNvamFlaGJ4Lm9rdAwAAAA1dGF0ZmZwby50ZjQMAAAAdHM1c2N5 + c2gudnZwDAAAAHZncGE0amJrLnRrMgwAAABoamN3c2RvMi5waHEMAAAAenZjMTMwZ3UuYjBpDAAA + AHI0MWdrb2pjLnV3ZwwAAABnaHUwazByai40c24MAAAAZnoxM294NGgubWxqDAAAAHMyZ2JjNXBq + LnF0NQwAAAAycHJmb3Joai5mYjEMAAAAdm1icm1ucWIubGIzDAAAAG1paHd2NWxhLmFmZwwAAABk + dGhuZTRubC5saWsMAAAAdHh0dmZpdHcubnN2DAAAAGtiZHR5bjBsLjFhaAwAAABzYmhia3Zhcy5q + Mm8MAAAAMHJzcDRtZmouZXU1DAAAAHpxeXVzZTV3LmY1NQwAAABrZ2dwZzVzZS5nYWgMAAAAbTRj + aTV4ZXoubGxhDAAAADEycTFkenBxLmEwdAwAAABuY3lyMnFzcy41YTAMAAAAc2Zka2VsbW0ub3Ry + DAAAADRiZWdsMmZtLnh4NQwAAABzdnBscXhoNS5lbHcMAAAAZ3hhb2FhbzUuZjJ4DAAAAG40c3Jk + Zmt6LjQ0dgwAAABicHR2Mm5qbS50amwMAAAAY2FoZTBidGouYTBzDAAAAGFkMGQ1dHJoLm0xdgwA + AAB6dWswMW9hMy51M3gMAAAAcXoxdm90c2kudXg1DAAAAGl2YnduMjAxLnIzNQwAAABveW5xaHd2 + YS5ldGIMAAAAdHAzaG56b3AuZjVlDAAAAGpxcjJwbHhqLmVldAwAAABnY2FvZG1iYS56M3MMAAAA + andxejBkaGEueGF1DAAAAGt2MG5oMmZuLnZpYgwAAAAxNGMzanEwdS5peW0MAAAAM212NGw0NTEu + aGFsDAAAAGVxbXpoMXgwLjJuawwAAABzbGZub2xndy5jMHgMAAAAdTNmZjVkdmIuZHozDAAAADVw + NWZlMm9pLnN6cwwAAAAybmF5ajFwdS5pZG8MAAAAZDAycmZiM24udjBhDAAAAGx3eW40d29jLmQy + ZwwAAAAycjR6bHRubS5qMWoMAAAAMWlyYnltMnQudXdpDAAAADBheHpqbTRwLjJycQwAAABibXR1 + eTBsaS4yZ2UVABWO+gEVjvoBLBXQDxUAFQYVBhwYDHp6bGd5eGE1LjR5YRgMMDExY3FhbjQueXpz + FgAW0A8YDHp6bGd5eGE1LjR5YRgMMDExY3FhbjQueXpzAAAAAwAAANAPAQwAAAB2MWtnNWhtci5m + aGoMAAAAZG5zdGNwbHYuZWRrDAAAAG1ta3lucHR0Lmw0awwAAAB5c3E1d2NrZy5idG8MAAAAcHJl + ZXpmdGwubXEzDAAAAGdmdXg0MWF2LmNvegwAAABnaHpnMmNqZS4yaDEMAAAAM2R0dngwMWkuZ2ty + DAAAAGV1emQxYjQxLmJxMgwAAAA0YXRkMnpuby5nNDEMAAAAeWtkc240dWkuYjNlDAAAAHRud2tm + aXNkLnFqNQwAAAB2ZmtpbGsydS4xYjQMAAAAdWN0MnIzdG0ubjEwDAAAAGRjdHdocWNvLnZnegwA + AABhc2hvYXZvMS5vamYMAAAAdWdzcWJicHMuNXQyDAAAADBwcHlyNGVoLmhtcQwAAABsNWRheHZ1 + cy5wcDIMAAAAa3d3MTFwMmEuZHhvDAAAAHNobWx6YzNpLnpkMAwAAABraTJva2FteC5hc2QMAAAA + aTFiYnUyd2IuZGpqDAAAADJ5dnZ1ZnRsLm1lcQwAAABmZzB4Y2xoay5odGgMAAAAY2l6cHh1c20u + bDQzDAAAAGFtcnRlMGxhLjJ0cwwAAAA1ZDUzZWY1NC5tMHkMAAAAcmxpczR4NG4ubXp6DAAAAHp5 + aGRjdnZsLnhieAwAAAB4ZDR3MGZxZi5sMHMMAAAAdnFzeWFoNDAuYmFuDAAAAGtvYW1raWJxLmtv + cgwAAABzNHBtdTI0dC5ia3AMAAAAMzE1ZzI0aGsucTQ0DAAAAHN3aDVxZmVnLnduagwAAAB3Z2Z4 + d3dmNC5jMmsMAAAAMWpwMmlsd3IubDVzDAAAAGNvcW90NHU1LmhncQwAAABsaXgzZ2dmaS5leG0M + AAAAcnhlbnNva3UuamlmDAAAAGUya2d5aWQ0LmYwYwwAAABkZWs1NHB4bC5pYmoMAAAAdTRpMDNi + YXAubjJ4DAAAADVqd3Yyc2M1LjJydAwAAAB1ZzR6NGxtcC4xMzAMAAAAMW5lMXVjbmgua2gzDAAA + ADQzb3N5cjVuLmpzaQwAAAB1NWpicGFmMi5mcjAMAAAAbWMxY2FvYmcuMW9xDAAAAGJlemVteHZy + LmlhZwwAAABleHJ0Z2xhMS4xdTEMAAAAb21waWxlYWwucjFnDAAAAGg0bXoxdmFiLmJlbgwAAABy + Z3BkYWx2dy5kaXgMAAAANW1pb2NiNWsuaHR0DAAAAGt0c25mdnBlLnEwZQwAAABjNDFoYWV5Yi5z + dW4MAAAAaHVobGZpdTMubG5qDAAAADBlb2F2Y3BvLmxwNQwAAABrajQ1ZXpyeC5tZTIMAAAAYXNt + ejVvNW0ueXVtDAAAAHN5ZGJqcG9uLmRmeQwAAAB5dHc1Y3FtaS5iZGMMAAAAcTN6M3JlamQuMHRm + DAAAAG8zdHB2cmJkLmtncAwAAABpbWp1MWcxay40bWQMAAAAaGVwdzF0ankuZGRyDAAAADJic2Np + YWd6LmF1ZAwAAABwdWN5bWFldi5xajAMAAAAb29ncmtlY3kuMGdiDAAAAHZnMXBjNHd6LmFoeAwA + AAB3ZHRkcXRnYy5oNXAMAAAAY2FieHdwbzAub3pxDAAAADIxcWFjYnRwLmlpdgwAAABqMHltdWJp + YS40amwMAAAAMmUzeWliNXkub294DAAAAGIxMjF0YnlvLjFtZgwAAAAyZWVpeXRteC5jMmEMAAAA + aXdramt2djQudWcyDAAAAGh4aGgwb3gwLmh4ZwwAAABkcWFpanYyZi5mYTQMAAAAejJ2YjNqbWEu + djUzDAAAAHBzNHZqdHhwLnNjNAwAAAAzMHlyMW1kZS5lZGMMAAAAeGlhZ2UzazQuZTRlDAAAADRo + NG93YWFiLmh5cAwAAABiejR0M2xkYy5ybnIMAAAANHFhZ2cwY3ouMG12DAAAAHB4aWxodWtxLm9j + cAwAAAB6c2hjMXAxeC5yY2wMAAAAMWphMXlzNW0uYXFnDAAAAHQ1ZGh0c2txLnVpdgwAAAB4cm5m + ZGJveS5mdmEMAAAAdnp6MDJwYWQuMHdrDAAAAHB2eHNpNXRwLnFzdAwAAAB5MnZhdG1iMS5vZTUM + AAAAYW1taWp6bjAuYXMxDAAAAGt3dnVlMG0yLm01cQwAAABiNDVyYzF2di5xZjQMAAAAdWJwMDBx + YWYuNDNzDAAAAHdybXpvaTFuLm1yZAwAAAB6NDBpY3hmMS54YTQMAAAAY241eXkxaDUuYWh0DAAA + AGRkbjNmaXF0LmR6YwwAAABvdXJ4ZTJrcS5mam4MAAAANXgzMXpwM2MuZ2pqDAAAAGdtMW5oZXBz + LmJzYgwAAABmbWZ4cnRsZS5jMXQMAAAAenZwYW1hc3kuemRwDAAAAHV0empqb2VmLnBscgwAAAB2 + Z3l3bmt2Zi5hNHMMAAAAY2lueG0zYXouYXkyDAAAAGp6YnF5czBtLmdzZwwAAAAxeGltM2lwdS4x + YmsMAAAAYTRzZDU0aW0ueWIzDAAAAGV6YXQwZ2dsLnVqMgwAAAB2cWxmM25sMy5ieGUMAAAAYXFj + NXUzeHouNW5pDAAAAGlxYWYweHZuLmQ1bwwAAAB3YzJyM3pmdi5zY3AMAAAAbHJxbHp1bmIuMW90 + DAAAADFvY2FnM2Y1LnBxbQwAAAB6YmIxaDJ5Yy5kZGoMAAAAbWFreDB4c2oud2NpDAAAADNyZ3Rm + amdsLmg0cAwAAAB1M2hyMGFnNC5ndHQMAAAAcjRqZmlxdTIuZmJpDAAAAGllaXoyNTBqLmswdgwA + AAB1cjR4YjFtcC56dmUMAAAAMjVuZ3FqeWgueWp2DAAAAGQwZDRyYnJmLjVnagwAAAAxb2ZjaGZk + NC53NGwMAAAAa25sYXRpYWcueTV2DAAAAGtyb3dza2xkLm5sYgwAAABlZWl1Mnhnbi5ldWQMAAAA + bGVyeWt1dWUuYnl4DAAAAG9ueDEwa2dnLnVnawwAAAB3Z2NlYjIwYS5jcm4MAAAAb3NycHMyczQu + cG95DAAAAHkyc2FtZTR4LmZxcwwAAABkc2kydGRsMi5rdHUMAAAAc3FyMHAyNGcuMTJrDAAAAG1z + cmt0ejNoLnJuaAwAAAB1YjR1dmNpbC5ocjAMAAAANTFxb2tiNGEuc29vDAAAAHVxcDR2dWhsLnZl + eAwAAAB4aHExcTVrbC5ydDEMAAAAZ3h3aDNzdnQubjFvDAAAAGYza20ycXNwLmdtdgwAAAAxaHJj + cHI1ZC5hc24MAAAAMXp5MzB6M2EubXpsDAAAAGhvc2R5b2ozLnJnNAwAAAA1anRoam14ZC5kZXYM + AAAAdmhreTVrMGkuYm9pDAAAAG5tcGVsdjEzLjIxNQwAAAA0ZXp5czFmZy5mcnQMAAAAYWNlYmtl + MTUuMzJlDAAAAHdtbXBobjNwLjNidQwAAABidHNmZXJpcS5naXIMAAAAeWQwbzJ1emsubHpwDAAA + AGwzbmdsYXQyLjIzeAwAAAByNGdob3hxYi5veHgMAAAAdnp2dG9vMXEucXJzDAAAADRoa3djbmRn + LmVvYwwAAAB6MDFjMm55ei55ZHoMAAAAem1vcjExeDQucTAyDAAAAGI1eHZ0YjMzLjFxbAwAAABx + cjNjbXluNS5vcGUMAAAAbTVjdmJoMnouYjF2DAAAAGJrMWZybG4zLmp4cQwAAAB5c3pleWdkbS5z + ZjIMAAAAbWJ3Z2xiNTQuZWRiDAAAAHFjMWJseTNuLjMxZQwAAABhamMwaWtycy56dXYMAAAAc2Vj + Ym5yankuMXdpDAAAADUydWFsaGFwLml5MwwAAAA0b2pzcXlyay4wcmwMAAAAeWxrNG9udncuc2Jw + DAAAAGNjNTJhdmh1LnAxZQwAAABvdmF1ZmVoZi50bHIMAAAAdzJmbGZtYWYuc2RsDAAAAHZhY2tv + aWN0LnZ3YgwAAAB5dHRhaHdieS4waGUMAAAAcHpiY3I1ZGkud3U1DAAAAGluajBueGpiLmkxdAwA + AABleGZoeWIzby4ya3oMAAAANTFuY295dDQubGxjDAAAAHFkamUzbmZiLjFyMAwAAABkeHl5NTRt + ei4wcDAMAAAAZm9iZXcwbHgubnViDAAAAHB2ZDJjamdhLmhnYQwAAAAwcHNhMWJmNC5qejAMAAAA + aXVsM2d6eGouem9tDAAAAHY0MG5rZXByLmlycgwAAAB0MWIxcmQwZi56YmoMAAAAemJ2NWJncTAu + MjB2DAAAAGhkb3UwbTBpLnlvdwwAAAAzZTFzaDQxay5pbWwMAAAAZW12b3pjeG4ubGtsDAAAAGwy + cHp1MXBrLnBnbAwAAABjMWhvcXJtZi5na3EMAAAAeG1ma3R4M3Iua3g0DAAAAHB5NXR2eWFtLmRs + egwAAABkZ2l1ZXlmbS5taXMMAAAAZG5wZzN0ZGMueGhjDAAAAHV6d256Y3FhLm94egwAAAB0YXox + dm5kci5uNHAMAAAAdGFwdnB0aHIueXdzDAAAAGRwMXk1anZ0Lmc1dQwAAAA0M2V1dnFkZC51emkM + AAAAMDIwbG0xMGgud3dlDAAAAGNkM2dtbWVpLmwxZgwAAAB4ZW1tM2VkcS54enQMAAAANHV3M3d4 + dHUubnAxDAAAADNjbGtrdmQyLnJsbgwAAAB1NHRpajN4ZS5vY20MAAAANWdicTFxaHouM3dyDAAA + AGpvZXJnd3cyLm5mMgwAAAB2MnVqbXd0bi5pZngMAAAAc3lkb3hrZncuZ253DAAAAGJ1dzE0bGQ1 + LmdmcwwAAAB3M2FrbGVxdS52Z2kMAAAAY2NwaDF3ZDIueGR5DAAAADBnMG9vcW4zLnZwaQwAAABj + cmFmMGYwbC5icWQMAAAAcHBlZnVobjAuM2hmDAAAAGljemt4NHozLmhjaAwAAABncTRhY25laC5p + YW8MAAAAbWQ1cXRwbXcub3ptDAAAAG5jY3ZtZTMwLndvagwAAABpbWVyYW5yaC54aTUMAAAAb2J4 + ZXZsdXIuZjBlDAAAADVoZ3p1c3ZrLmVlYgwAAABzazA0Y215bC5keXoMAAAANHh1cXZ2M3ouaWMx + DAAAAHZveHV1b2ZxLm1jcQwAAAB0djUzc21idy5hbTAMAAAAcHU0azJ2aXYuMHJyDAAAAGtubHNv + aW1uLnZsdgwAAABlMGQ0NGo0ei53NG4MAAAAcDBoaWZ3dDEudjVtDAAAAHJoY2F6c3FzLmx2aAwA + AABheWFtY2RicS5zMHkMAAAAYnh1Z3FsbDEubTFlDAAAADB4Y3V4b2ZtLm94dgwAAAB2cXZ2bXdj + cS5sMzEMAAAAaG5mbzRwd2IucjBiDAAAAHV1eDNmaHBzLmw1MQwAAABpNWpoeWJncy5tdGkMAAAA + b3pmNXIza2Eudnh2DAAAAGR6dDR4bmNwLmJldQwAAABqNGpnNDRlYS5jM3IMAAAAYmlvajVxYXgu + NGNlDAAAAHVtdDAwcXZyLjJmbwwAAABhZXprenJwby5mZ3cMAAAAZG40ZmJxNHcuajF4DAAAAGRk + eXp2bnFkLmNtcgwAAABhbXIyZWx1Mi5yaGcMAAAAZmY0cTJiemkuc20xDAAAADU0aXZ2ancwLnFi + ZQwAAAAwMWVid2p0bi53eXkMAAAAaGJ1bWRqZGkuYmZ5DAAAAGxsdmNlMTBhLnF0ZQwAAAAxeXF6 + MXN1Yi4wb2YMAAAAa3RsbXh4ZTUucHJjDAAAAGM0NGMzemd4Lmd4dAwAAABwd3h2MnJibC4zY3gM + AAAAMjFuNWl1bm4ubzFiDAAAAHNpM2JnYmUxLm5hdAwAAAB3cXRieWkzeS5td2IMAAAAcDBrd2Nk + cGkucHphDAAAAG53dnRjcWIwLmMwYwwAAAA1eTRmbnIzZi5wZHgMAAAAeWlxdHdlenkuZjExDAAA + AHJwbnZuenpyLm40cgwAAABua3ExdXExZi53MmsMAAAAZ3cxbHBjbmYueTN2DAAAADBwbHVhbDJ1 + LmpkMgwAAAB1a2RsMzAwZC5zb3AMAAAAd2NubG92aHcuMWxiDAAAAGNwZXVjcjN6LnZ6egwAAABi + c2tqemJnYy41ajQMAAAANDNkeml5ZHYubXZpDAAAAHd5anJ5d3FrLmtycgwAAABieTF0NHVucC54 + YmsMAAAAaWloZWVmbWYudnFtDAAAADJrdWZ6eWtxLmE1MgwAAABkaG01eDFkMi50dmQMAAAAbmc0 + NGVoNDMuZzV4DAAAAGp6cGZtM21qLnJreAwAAABwcXR1bHdwMS5iYXUMAAAAYmlwaWlvemcucjBp + DAAAAGxyYzJnNHNrLnJudwwAAAA0NWhnZHhxZS5scHEMAAAAd3B4emZoZWQubDUxDAAAAHg0MTJu + and6LmJ4eQwAAABwdGZieWxjYy5tYnEMAAAAeXA0eHNuZ3guZXlvDAAAAG16NTJ5cXAwLnBkZQwA + AAByajJyZGhhei5za3QMAAAAY3pobjJzZ3Iub2J6DAAAAHFveGVweWE0LnR4MgwAAAB6bDRoZXBu + by55eTIMAAAAYWh1cHFwMHoud2NlDAAAAHltMzBuajF3LnAydAwAAAAzcDBubzNvYy5xNG4MAAAA + MGZncXVya3MuY2RhDAAAAHh3MGFxY3VyLnEycAwAAAB6a2ZzZnRveC4xYWUMAAAAbHZoZ3gyZ2wu + Z2wzDAAAAHlmcnRtamViLnhzcwwAAABoYTBqb25jeS5hNWoMAAAAc3VqNXl1NG0uMmV0DAAAAHZq + b3NnMDI0LmswdwwAAABxcGx0cXd1cS5vbWYMAAAANGZhcjBnd3ouemJsDAAAAGNibGVrY2Z6Lmxk + bQwAAABlMHF1dm5qYi5rbGYMAAAAZnp3NW12cjQuNHNqDAAAADJpbGN0MzVtLnpucQwAAABxb2Fr + Znk0dy4xeWMMAAAAZ3N2bDA1bnIuZGVvDAAAADRud2kzb3l2LnVybgwAAABheDMyZ2N1by5sanEM + AAAANG5xMnBvY2YuM2RwDAAAAHlncHNodmJ0LjNmcAwAAABrZjEwZTVqdy5iYjIMAAAAMHoxbTFj + NGoud3l0DAAAAG9waWt3aWpoLnM0egwAAABkZmhydTQway52eXEMAAAAem1zemMxcWIuZG51DAAA + AGF5NW5rMTN4LnJmdwwAAABlbDFjajBtaC5kZGYMAAAAbmNrdGh4bDIua2ZoDAAAAGtuZnoxMTVl + LmU1awwAAABoZGt3NWdnai5hZm0MAAAAczN4c2FtbHcuZG55DAAAAHUwZDFxbWRlLm9ubgwAAAAy + MnlodDV0cy40eHEMAAAAbXptMGl2ZXkudTEzDAAAAGExNG8yd3p2LmowbAwAAABwZzBuMzI0ZC5m + ejIMAAAAdGkxM2M1MW8uNXpsDAAAAHphYnYxaTVjLmJiegwAAAB0ZWh3cHJldi55bjIMAAAAenps + Z3l4YTUuNHlhDAAAADVjNTI1MGNmLmZzeQwAAAB6dGFzcms1dC5peWoMAAAAdDBuNW5uZXAudnNh + DAAAAG55dmVvc3gwLndvcAwAAABsZ3hjZHRoMC5hbWEMAAAAdGIwb3FwM2wuZXZ3DAAAAGRlY2J1 + azEzLmxwZQwAAABzZnFjNXJ3eS5uZGYMAAAAMnQ1M2p5NWEua2lqDAAAAG12Z2hqdW8xLmdpagwA + AAB4MWZodmlrby5wcnoMAAAAczM1eWVmZ3AuYXVqDAAAAG1vZ2FhYm15Lm9sbQwAAABzZGo0M2g1 + bS5iZXEMAAAAdHZyaDRuM2wua3hxDAAAAGNka3oycnd0LnUxcAwAAAB4enkwaHZvci5nMHEMAAAA + bWpscWlrc2wuYml1DAAAAHgzcWZxNTFxLnh3ZQwAAAAwemZwYWVlYy5rNTIMAAAAY2wzM2xwZWou + dGc1DAAAADUxcTRxa2duLmw1dAwAAABiNHZucjNqby41d3gMAAAAMXVmb2YxZ3UuYjJoDAAAAG1r + bTJ0a2h0LnhheQwAAAA0bWJxbjVyNC52MGsMAAAAcXZxb2NjeXkuZnlnDAAAADRqbHgwamkxLndq + cAwAAABmenlyNXlmbS5wZG8MAAAAbTVyeXI0ZG4ubGZoDAAAAGxsMXFidHF4LnRidwwAAABtbDQ0 + em90NC5yaG0MAAAAbjNqcDV2Zm8ubjV1DAAAAHh4eW91cm8wLnA0cAwAAABkY2s1MXRwdi5jcWwM + AAAAcmRvMmxxYnEueXFsDAAAAGx2cnEzb2ZjLml2dwwAAABmaHY0MDJyaS55ZWIMAAAAM2h2ZXYx + bWsucXdkDAAAAGp2bnRvZWY1LnJueQwAAABieXVzeW1kdS5wc2gMAAAAb2lib2x2cHAucGplDAAA + AGZ5NGFnMGgzLmR6ZAwAAABxZmlleHpsZy5mMngMAAAAd3V3Yno1anYucHZ6DAAAAG9qNHJoNXN4 + LmgwawwAAAA0Mm52c2k1dS4yZG8MAAAAMnZ4dTVsZGMua295DAAAAHdsbGxxdXptLmR4NQwAAAB3 + M3ZweGxyYy4yM3kMAAAAaGFpY2gza2YucmVnDAAAAHdvZGQ0b2V2LndpYgwAAAByMGFvc3FvaS5o + cmwMAAAAc3k0YnhsdnIuYm14DAAAAHJuMXU1MXd1LmhsZQwAAABqazVudm90ei5iM2QMAAAAb3Bv + Y3V3ZHUubjVwDAAAAGt2MHB2dWl3LnZidQwAAABoMjQwNXptZC5kNG0MAAAAdXl0aXZzZW8udjR3 + DAAAAHdiZ29md3phLmZxZAwAAABzcWRpcHl1dS5qcXYMAAAANG8wYmp2YWcuNTM1DAAAAGdhNHBk + c3BhLjUzYgwAAABiaXBiaTVjdi5ham4MAAAAeHhyaWEwaGMudHZmDAAAAHp2ZXVvZWN6LjRrZgwA + AAB5eWFseW50Mi50bWEMAAAAZDIxbG41NTEubjBxDAAAAGp3Z29mbGYzLnlwMAwAAAA0bWpwc3di + Yy5udGcMAAAAMnMya3Bjc2MucW16DAAAAGY0cjJmdnJ5Lnp1awwAAAA0eWhtcTVheS5uczEMAAAA + d3hmMjVlZHAuaDBzDAAAAGUyd3htMXF3Lm96egwAAAAyc2M0NXB3aS4xZXcMAAAAanEzbWp6NXcu + YTRsDAAAADJncGFua2d4LnlxegwAAABreHNtZWNycS5oeGkMAAAAMnhlMmlzM28uMXUyDAAAADRp + d3Brb3MzLnp4ZgwAAAAwbmI1Z2Nwbi5paWMMAAAAcm5tbDUwMDEuMWN5DAAAAGplcWZoZjBuLnlt + egwAAABzem9yc2tlcS54cjQMAAAAbjRiMjB4MmUud2ZvDAAAAG11ZHlyYXUyLmtnMgwAAABoMTRh + ZG51ci5uc2cMAAAAZDJnNWdkMjAucjR1DAAAADRneGNodXMxLjFvdAwAAABva2t0dnFmdC56cmsM + AAAAbDBtbXp2bTMuZGd5DAAAAGFtY3hma2J6LnZobAwAAABzMjNrYjNqYS5zbGcMAAAAZ3h4b20z + a3MueG5oDAAAAHV6bHdlbGo0LjRyagwAAAAycHRjMDJzay5jbGYMAAAANGtiZmMxemQuYXcxDAAA + ADBha2Roam5rLmF3bAwAAABsbHNiM3Z3eS5lM3gMAAAAYmp3eHp5YzQueHNwDAAAAGdpM3lsdnJo + LnRxcQwAAAAyc2l2YW5iaS5kaHEMAAAAajIxZ2M0ZTMuM2NsDAAAAGJnMjRpZHh6Lm4yZQwAAAB2 + b3pnZXJmai5yd3YMAAAAY2pyMXcxdGouazRkDAAAAGdoam5seGVjLjFuegwAAAB2dnllcGFjNC5q + NGIMAAAAYWF1dHN2YnYucWRuDAAAAHF3ZTAwYzJiLjExcQwAAABjYXh2d3AzZy55bjIMAAAAbXJp + YzF1YWQuMHJsDAAAAGp0YjVzZXF1LmF4MgwAAABzY3pyZ2xlaS5oZnUMAAAAamdseDB3aHcuZW1l + DAAAAGR4cG4xa210LmtkbgwAAABteHplZG1qaS5qcnIMAAAAa3FiajRjNWouYXp3DAAAADR0MnJh + ejFvLnlqaQwAAAB1a2Z3aTNlYy5nemQMAAAAemVjbmx6b2QubDM1DAAAAGVia2JhZDFyLnlocQwA + AAB5am1xaXlycC5ld2sMAAAAZ3ozaWVnNHAuaWQwDAAAADBlbmFvZXQ1LnVvagwAAAB2cGUzZTJw + aS5qZHAMAAAANXVsdGpweWQuc3RvDAAAAHQybmtiNHJlLmkwZwwAAAAxaHI0M2R0di4wc3EMAAAA + MXdhZ2pyencueXRxDAAAAHltY3VieWdrLnduZwwAAABibG1tMmdtei52Y2gMAAAAbXM0cm1lZjEu + aGxlDAAAAHN1eG9vanFmLmxudQwAAABnamFpb2JiMC55cmkMAAAAa3lkbWU1c28ueHRiDAAAAHEy + dTN1cmh5Lm5zeQwAAAAxeTJmbHp1dC53M2IMAAAAZnJwbHlwc24ubWFpDAAAADJsbm1hdzRwLnJn + egwAAABzeXRkd2J2aS5jd3oMAAAAeWc1ZTJmemYuZjFoDAAAAGZpYjVnaGZrLndlMAwAAABjMmJ1 + MTF6eC5jY2UMAAAAYnc1aW1pYjUuMDJ3DAAAAHRhZTBmb2x5LmxlcAwAAABnamExM254eS41aGUM + AAAAengzbWt0bzQuNXV5DAAAAGVrend6bTMyLnNicwwAAABnZzB6MXh2Yi5mNG0MAAAAczIwNDVk + aDQudGJqDAAAADUwcmdoYmhiLnBzZgwAAAB5ajAxcHAzdS4za2oMAAAAcjFzaHdtYm8uYm9rDAAA + ADQxYWQxdWFlLmRhdQwAAABkZmJ2MDJ1ei4xZTUMAAAAenQyMGs1ZGwubzFqDAAAAGV3Y2Npemp6 + LnZ6YgwAAABzZDF5cTU1Yy41M2cMAAAAaDBpaGZmd2MuY3BvDAAAAHV1NDBraDBkLjR5ZwwAAABk + am4yZXczMC5lbmIMAAAAc3UwemdtaG0uaHkzDAAAADRhaXRtd2psLnpyYgwAAABzYng1Zmlwbi40 + cHQMAAAAY2NjeGlicG0ud2JiDAAAADBieHVxeDJuLmEzMAwAAAB4ZWxqcGx5dC55dWUMAAAAcXQ0 + bTJnYXoueXlmDAAAADN4aWJpY3R4LmJ1ZAwAAABnb3BhMWY0cC5icnAMAAAAcG9oc2pmMDIuaGUy + DAAAAGFmYm1peXU0Lnl6bwwAAAAwbXJsZWdreC5wa2gMAAAAeW5sempseGwubmR2DAAAAGZ0eWNt + MTJrLmJkdAwAAABzMWVpa3hvdy5qZTIMAAAAaG9sYjNjZmkuYW9iDAAAAHp4dDNhc3IxLm40agwA + AAB0ZnMxZmxrMy51ZGwMAAAAZTJ6ZWZkYzQuNHRvDAAAAHFhdXI1cTFvLmthdQwAAABoNHRjMjVx + Mi5yNWoMAAAAajBibmhleG8uYWp0DAAAAHF0cm1rNXV0LjRpMwwAAABrZ2NuZnI0eC5oaGkMAAAA + MHRweTNjdnQuaDNiDAAAAHlrMHBicGkzLmxycgwAAABkand1ZGkyaS5rdW8MAAAAaDRxamo1aWQu + NGZtDAAAAGxyNDB0amIwLm8ycwwAAAB5emxjdTB5bi5pd2UMAAAAMHZlcDViZDUuZ2ZrDAAAAHht + enhibnJnLmY1egwAAAB6bnFxbWp3dy52aHMMAAAAYmhycmx4YnUucHkwDAAAAGJvcHplMTNvLmxh + agwAAABzNGJ4ejBndy51bTMMAAAAMmgyb3J6ZHAudnUzDAAAAGpkZGs1bWZ1Lm9hawwAAABhdHEx + anlseC55cXkMAAAAMGV5Y3hmd2wuaWY1DAAAADBnMmpqbXZnLnUyaQwAAABlMGJtdXJ5bi5sZnMM + AAAAaWRmazE0aTUueG5tDAAAAGVzMndic3RzLmxmdgwAAABycXVyb3V1aS54eGEMAAAAdGNxMXJj + ejIucXhtDAAAAGRoeXRzdXhlLjU1egwAAAByMGNzeWxodC5samYMAAAAandndzNmM2MuaWZiDAAA + AHptcGVvbHkzLjR0MwwAAAB6aXdtNHRtbS5yd2oMAAAAeXhrdnhneTEud3RhDAAAAHM0emF4cWE1 + LnpvcwwAAAB4cW5icmkwdC5tbnEMAAAAMmV2M2MzZ3AuZHpmDAAAAHBxNXZiem9wLmh3agwAAABj + M3Qzd3IzMy5qY3gMAAAANXhqa2YxenMudTF2DAAAAGtkbXVvYzNrLmhodAwAAABhZ2RkY3V2bC5l + bnoMAAAAMnZseXYyYzUucWp1DAAAADV2c29rY2I0LnBocgwAAABiZmZnNWZmby40dGQMAAAAa2th + Y25xdHkuMnptDAAAAHcxdGs0cjUxLjBkNAwAAABudG5sbmJ4bi51c2sMAAAAcHQya3pobGsucTRw + DAAAAHd1cmcyb2IzLjVjMwwAAAA1cXA0MmdvaS50cGMMAAAAdGQ1dnBla3EuM2p0DAAAAHdwd20z + Y24xLmNqegwAAABtYWZhdnRkYi56cXUMAAAAcWZuams0a28ucXpkDAAAAGRja2wxdTN3LmtwYQwA + AAAxc3Jha291MS5rMG8MAAAAYWRrazQwdXYuaXhkDAAAAG5uMXE0MGxvLnYzYgwAAABpY2JnbWF3 + by5hdnEMAAAAYTRkMWZleTIuNXNvDAAAAGcxejVzMWJ4LndwYQwAAAAwZWt1djU1Mi5mczAMAAAA + aWcxNTFwZngua29tDAAAAHZ6cGJocDBnLnBxZAwAAABmMDV3dmUzby5xZDQMAAAAMWV6dWt0cXIu + dmZvDAAAAHpxbXB1aTRtLjNqMwwAAABjNXFkaXBpMy55cGsMAAAAbnhvZXhvbG4udHFtDAAAAG8w + azQxcTFtLmwydgwAAAA1Ymp5dzRibi4xNDIMAAAAZjNkZGRwaXIuM3Z5DAAAAGpnbzR6YWhsLnZp + NAwAAAA0ZGMzcnNteC4zMHEMAAAAZGNxMGozNGEuY2dqDAAAAHBhNWRsa3NzLmNxcAwAAABobGhh + ZXFsMy5zMG4MAAAAZHlweWJ0cWQuMTBpDAAAAG50NDBmZ3JqLmRqeQwAAAAzZ3V1emJubC4yMnIM + AAAAd2Qyc29zcHcuMWVpDAAAADRnNWxhc2liLmVyMQwAAAB6aGtlYmxkcC5xbW0MAAAANHl3cGRx + MWguZHpuDAAAAGpjMmJ4aHRuLmw1cgwAAAB6djJqZG93cS5reW4MAAAAM2N0cXZncnkuMTFvDAAA + ADMyMjV2cXpoLms0YwwAAABrb2gxMGMxMC5mbWEMAAAAemlieGR1ZXcuNXJjDAAAAHZ6cTFtYmFy + LjEyZgwAAAB5cnBucDJnZy5pNGsMAAAAY3N0MGl4cXUudmNnDAAAAG5veXkzY3p6LmwybwwAAABv + dmdvaWs1cS54c3MMAAAAaW5xcHhxMHoueWdpDAAAAGJ0ZGtnazBrLnZxcQwAAABjazFzbXlnei5x + b3UMAAAAeXBicndkd3YubWFiDAAAAGlmYml0ejJ1LmpvMAwAAAB5YXcwMjUxMi5xY2UMAAAAYWZ1 + cTNzb3IubGRiDAAAAHFyeXJhMWFsLjJwdQwAAAAzZ3cwdGtrdy5sNWEMAAAAdXF2eGJ6NGMuenhm + DAAAAGZ4cTVmZHplLnJ1bwwAAAB6aTRvZGpvNS52Z2IMAAAAaXJpdmN5c20ubjVpDAAAAG15NHlw + cmVoLnVueAwAAAB5c2ZocWpqdS4xa2UMAAAAMmQwazA0MHkuM2kwDAAAAHk1NWhud29kLnp4dQwA + AABsNXV2YTNoaC5oNHAMAAAAcDVoYXZ2bmMubHo1DAAAAHhraHpzdmZsLjB4dwwAAAA1dDN3cjFh + aC5hdW4MAAAAaHdwMDRjZnUubWFjDAAAAHJvNHkwMXc1LmowawwAAABrdXozYmN0ai40dG0MAAAA + cnR3c2prd3MubzF3DAAAADNjeXN0cGtuLnZ2YwwAAAAyZWR5M2hrcS56cmsMAAAAczN1emNqeTUu + eGF0DAAAADM1ZmNndWpwLjNsdAwAAAAybmEzbXpmei5mY3oMAAAANXllcWphYXouMjBvDAAAADBn + a29pNHZwLmI1dwwAAAAyZHliZWN2NC5iYWUMAAAAaWQxbno1YTUua3d5DAAAAGZzc3ExM3FvLm9y + ZgwAAAAxeGJxMjBudi5oM2YMAAAAazRsZ3F4aTAuZjN4DAAAAGgxYTR3MWZoLmRmbQwAAABqYTB0 + eDFiay53MDAMAAAAbDVmZnhkYnkuMHVhDAAAADJzZTRhZ3B4Lmc1bAwAAABnbmdzY2l3MS53MGsM + AAAAMWZ0bXhrYzMubGF0DAAAAHNzbWF0b3JiLmJtbAwAAABseHlkajNidS4wYm0MAAAAaGwwaWkx + c2suMHAzDAAAAGJhbnJ4MWwxLmJ2bgwAAABwcnppcGd0eS51MXQMAAAANWFhNWwwcG8ucmUzDAAA + AHQzM2VjeHI0LmJpaQwAAABpbHh6MTRoMC5ycXAMAAAAdWFxMmx1MGsuemF2DAAAAGl6eTM1ZGZi + LnluZgwAAABvMjJjYmV2bS5jbGIMAAAAcGxsNGhjaXYuZHNnDAAAAHRidWl3c3RuLjJneAwAAABn + M3dnMmJ0aS4yd2MMAAAAMWNvNWY1MXIuMjRnDAAAAHNnZG56cXhkLjBqbgwAAAByenh6MTMzei55 + bW4MAAAAMm95ZWVpajEuMXVsDAAAAHVmYnZ2MTRjLjBhNQwAAABhYWJnY2VtaC5iZm4MAAAAMXd1 + eGJhZncubHp6DAAAADFwdDEyZGxxLmxzdQwAAAAybjJ2d2U0bi51ajAMAAAAdTFnZ3YzdzAuaHkz + DAAAAGlua2kxbXB3LmhkMgwAAABrc3V5bWx6by5reHgMAAAAbWt4enR0cWMubXR5DAAAADNiNGI1 + czR0Lnd2bwwAAAB5enVoaGdwNS5oZnQMAAAAbjNneWM0cTUuZzMwDAAAAGVndW9ldHg0LmNtMAwA + AABta2JobmJyZS51djUMAAAAeWt5eHYwbjQuc3NmDAAAAGw0bmhhYWFsLnFnbQwAAAB6b3hlMGVn + ZC50MXkMAAAAZnZhbXQycWouMWVlDAAAAG16Y2J2b2ljLnE0cwwAAABoMmtrZGdsbi5vemYMAAAA + YnpkbGhhMTEuczJyDAAAADVjMWZxb2RmLnBxcwwAAABkanRxcXN1aS55MnYMAAAAYXVpdG13NWEu + emZtDAAAAG9kdzEwZ3RsLmFxNAwAAAB4cHJkdDFwcS52NW0MAAAAbG1qcWtycXYuYjFuDAAAAHBh + Y21pcjJnLnBkNAwAAABvbGdoM2F3Zi5qanAMAAAAeXF6bG9uMHQucnMwDAAAAHh6eHNpeGdvLnVo + cAwAAAB0emt1bG5jaS5ndGcMAAAAd2tlamFwMHkuemZlDAAAAGwzYnQzb2UwLmxnbAwAAAB6YnVo + YmNlci40d2QMAAAAMnFwcDNub2QuZmNnDAAAAHZ4M3IydHZ2Lnl1MAwAAAB6NHVidnQxby5xYWkM + AAAAemNlc2JuZW4uM3ZyDAAAADV5Znh2ZHV1LmhtbwwAAABvbXdjajFoNS5zbnIMAAAAaTJuaG9r + ZGEuM21zDAAAAHc1aGxwYXg1Lms1ZQwAAAB2NHAzcHQ0Zy52Z2oMAAAAMzMwNXFtZGguZngzDAAA + AHNycjV2a2liLjN0NQwAAAB2cHJ0Z3N6ai4yYWkMAAAAY2dva3pqc2EuYWdwDAAAAGk0MGFzeDN4 + LjAybQwAAABnMGgxZ3d5aC4yNDAMAAAAZWIwczBoaGYucjByDAAAAHlscnFua21nLndyZwwAAAA0 + c3Ayd3J2My40bzIMAAAAcXE1Z2ZyZ2YuZTRkDAAAAHprMjF4aHRxLnM1bwwAAAA0aWh3NXEzcC5z + MDQMAAAAZmRxdmdmNG8udGxsDAAAAGYxdnlnbmQzLnF3MwwAAAB4bGN6cWV0Mi5maXoMAAAAamVp + NXl0NGEuNHVhDAAAAHJmNGtiZmdmLndxegwAAAB4bnNoYWJ0aS5oYnQMAAAAenhwcnN4cnkuaGJ6 + DAAAADFnYWI1dW1kLnN5ZAwAAABvdm1uem01MS5sNXYMAAAAd3BlZGF0NWcub2thDAAAAGp4YjV3 + aDU0LjVnZAwAAAAxYTIyZXBjcS4xMnoMAAAAM2VucDFsaHYueDVhDAAAAGRtd29ocGdpLnJuYgwA + AABqdmZ1MGRwMC4weXUMAAAAZmt6aHVwcjIudGx1DAAAAGN6Z2l3emV4LmRqYgwAAABxcGptM201 + ei56dmIMAAAAMHd1d2VobW4ubW9hDAAAAHkxZ3FtajEzLnFkZAwAAABoc2pwYWlkdS40eWwMAAAA + aG52cHdyMWUuaTRrDAAAAHNtdG1yZHlmLnYwawwAAABrdXBlb3hqbi5mMzAMAAAAZW9ucGNubngu + YmIzDAAAAGRvdmh5MXd4LmhlYgwAAAAydHRuMXRjby5nZmgMAAAAMmhkbzQ0bjAucmRiDAAAAGVp + ZTF1dmJtLmxkZgwAAABqenBldXduay4wZjQMAAAAZDIxZjVjenYudWN4DAAAAHB5aWZmaTRxLnlx + NAwAAABtZXNsNXRldy40dmYMAAAAc3ZyMDFjcHEudWduDAAAAGpvemx1Mmp4LnJnZwwAAAB4cGho + ZWEycy5rbG0MAAAAbnJ3cTVtNWkuMmx5DAAAAGlqZ3Nnc3Q0LjBmbwwAAAA0dWdmbHVmei5xdGUM + AAAAeHkxZG4xMWkucDBsDAAAAGR0dHdvY2R1LjNuNAwAAABxYW9xMGdhaS5uMW0MAAAAbHNncnB3 + bXcuemsxDAAAAGUxMHhwb2JxLmZnbwwAAAAzbGMydGo0aC5lemIMAAAAa3d3azBydjUuMm8xDAAA + AHAya3ZhZGNpLmpkYgwAAAB4cmR2bW5sbi52MXcMAAAAYXowYm51bG4ua3drDAAAAGNtaXF5NHZq + LmFlMwwAAAAxbmNmMmEwbC5sMXQMAAAAMzVhM2ZmcmIuZmFnDAAAAGh4bHJpZDIwLmNhbQwAAABh + czNwcHNmdS5xd2IMAAAAdjBpMXZ6ZXguZXduDAAAAHczcHNqZ21iLnYxZwwAAAB4angyNG9uZy56 + bGYMAAAAM3RnbzFnZnAuYnIxDAAAAGkxaDJ1b2hqLmt3NQwAAAB4ZGp6YWIway53eXEMAAAAZGph + MnowMjEuNTJpDAAAAHBxdHpocmNkLm93cgwAAABobXZkaXdndy4wb2cMAAAAM2d5aGd0YzMuanBk + DAAAAHgxYWxnZGVuLnd0dgwAAABqYjBrcGhneC51MHgMAAAAa2kxMjRpdmQuMHhqDAAAAHkxYnpy + b3p1LmZqaQwAAABtM20xZGIzdi5ka2IMAAAAZDAzbHB2cWYuaHl3DAAAAHdvcmZyZnhuLjJ0agwA + AABjMnJxemk0bC5kdXIMAAAAMjNoMmtraHEuc2h6DAAAAGxjeXl3Y2ZrLmZjegwAAABleWQ0M2Ny + Yy41d2kMAAAAMmhycWdzM28uamkyDAAAADJ0eTR1a2tsLjVjcwwAAAB3aHJnbmQ1Yi5lYTAMAAAA + amcxa2J2Y2cuYXR2DAAAADFqcWFyemhiLmNyYgwAAAAwdWhkbWY0NS5meW4MAAAAamIzYW9tMm8u + MGhtDAAAAHR1cnppcTRvLmpibgwAAAB5c2d0dHN4aS5ucHcMAAAAcDN0eHVtcXIubWFzDAAAAHZq + emVlanEzLmsydwwAAABmcG01bmdrcy52eDAMAAAAbXBzMXRtcXguM3VvDAAAADVoajFsajJkLnp5 + cAwAAABtMXhnb3oyay50Z3IMAAAAZHNpcXpvdGgucnFqDAAAAHFxb3B5d3R5LmhoaQwAAABjaXVs + YWtzdC5wdXEMAAAAeWdvNGJ1MmsuMnVnDAAAAGZtY2ticm5vLnIxYgwAAABobGhhaDRuby5wcncM + AAAAZGI1dm92cGoudXFzDAAAADM1MnpoM3h5LjJhYgwAAAAzY3poa3VvMC5penMMAAAAM2Yxanlj + ZzMuajB2DAAAAGtiZHIwdzR1LmdtdAwAAAB6eDNhNHZsYS51c2sMAAAAc2J1ZmZibjQubzRwDAAA + ADJjMGZ2c2UzLmt2eQwAAABwZWN4MzNjMS56MDQMAAAAa21zYjFrNDIuNXBqDAAAAGNwM3ZianZ0 + LnU1egwAAAAwbDRkbWhxdC40eG4MAAAAYWwzM2piY2MuZ3hrDAAAADNxaXBqeHYxLnhhMAwAAABl + aTVjZ3BiMi5qdWEMAAAAZTVvdWNnd2subW1mDAAAAGVqZmpzMGhzLm1jbAwAAAAzaXhuZWt4bS54 + d28MAAAAdGRybWdoenoudGNiDAAAAHU0dzFldjNnLnJ5ZAwAAAByY3Bta3p3ai5lcXcMAAAANWVr + bG41MHcuNXM0DAAAAHh4NWx6djBtLnV3bQwAAAAwMTFjcWFuNC55enMMAAAAa25iY3JwYmwuZmx6 + DAAAADUzbXo1d2dvLnVsbQwAAAB6eTByMGxzci5zMjIMAAAAYWhudGJ4ajQuYmJtDAAAADQybDF3 + MnlhLmJzawwAAAB6bzAxNW01aS50enQMAAAAYmF2YWZndTIucTNlDAAAAGdzaHljcXFmLjFpZAwA + AAA1YjAzNXN5ZC4ybGcMAAAAbHlpZnkwaG4uenh3DAAAAGV0YXBwbGdqLmczYQwAAABtNGp0dXFh + di52ZWwMAAAAcWRvb2t5eHYucnF3DAAAAG9qeGI0YWhsLnZjMAwAAAA0eWNqeXd6ai54aWQMAAAA + c3ZqdW1uNXguNW9rDAAAADJ4amZsMmZhLm9icgwAAABjd2Z0aHBqdC5hcXMMAAAAdGM1M2JxeHMu + eDRjDAAAAHl4amRnYnYwLm9saAwAAABpcW5tNWh0ZS4wd2IMAAAAbGcxeXprNHEuNWpkDAAAADUy + dG92MmJ6LjVkaAwAAABrYzNxMWtjMS5qeXkMAAAAZ3NoeHYzeTEuNXR6DAAAAGpydWtvMGNxLnJn + YwwAAABlamFydmxmaS41cDUMAAAAeXgwdGpzeWEudGlvDAAAAGd1MGJ5NGJvLm4weAwAAABrejVr + aDB6Yy53MGQMAAAAejNwZm5heHIuaWF6DAAAAHR5ZWI1YnFqLjN4NQwAAAByd3RzbmJuci56dGEM + AAAANXB0dDV5MzQuNWhiDAAAAGhwZmVwMHFyLmFrYwwAAABiaW5rMHlyYy5qd28MAAAAcG1lenBz + amwuamQzDAAAADAzbGVnZHRvLmx5eQwAAABiMzNkYWk0My5xZXgMAAAAZGxudHFnbzMubm5xDAAA + AGJnaGJoa2VlLnRpcwwAAAByazBxM3Btay5jNDAMAAAAdnFjYXIxMnUua3pwDAAAADVid2FvZmJu + LnVwZwwAAABiZzJremkwZS53cGkMAAAAZTU0enhjZnMubHR5DAAAAGVtMDVzMnBpLm90MQwAAABv + YjFwMzUxbi54bWwMAAAAMGh1a3R4d2wuamV0DAAAAGtiaDF6dWxpLnA0MgwAAAB6b2NrZWtiYy5r + azAMAAAAd2pwYTFjMnIudmpxDAAAAHVkbmFrMXlhLjJscQwAAABub3BsenF1Zy5mY3cMAAAAZWdh + ZGJpd2EuZnN0DAAAAGJ2cmdkM2tjLmZmYgwAAABybnhrY2xnMy5lcmEMAAAAZGhmeGtoMmwud2wx + DAAAAGFyZHBqbDNoLmJvYwwAAAB3a2gzdWZ4eC55cGoMAAAAeXF5YmJoc2IucHVpDAAAAHRtem41 + cXlzLnpwcwwAAABhNGVjZ3ZiYi51cGsMAAAAem5wMmd6MmoubGwwDAAAAHJwMHJhcHhuLml6cwwA + AAA0dHp0ZWRtbC54ZXcMAAAAbXEwc2Zqem0uMGVyDAAAAGN5Mmx3b24xLnczdwwAAAAxbHV1cm5x + Yi5qcGUMAAAAc2g1dmdrM3AuaHRqDAAAAHRlMHduYm8yLmJwcgwAAABteTB1czE1NC51b24MAAAA + NWhmZ2NyanYuanJjDAAAAGlmbGxpMHl3LjNkegwAAAA1eWJkamdnaC5nZHEMAAAAY2dqaWFvejUu + bHlpDAAAAHJ6aXc1MnViLmM0ZQwAAAByNG1xMGlzZC4xbWMMAAAAeGJlcW5md2UuNG8xDAAAAHVw + dTF3aXN4LnhvaQwAAABoaGd4ZHk0cS5qYnYMAAAAcXYzYjBqb3AubWFhDAAAAGR3NGQxZ2hjLjRj + MQwAAAB0cHNrdnJyMS5iczAMAAAAb3h0Z2N1M2EuZ2gxDAAAADNvamFlaGJ4Lm9rdAwAAAA1dGF0 + ZmZwby50ZjQMAAAAdHM1c2N5c2gudnZwDAAAAHZncGE0amJrLnRrMgwAAABoamN3c2RvMi5waHEM + AAAAenZjMTMwZ3UuYjBpDAAAAHI0MWdrb2pjLnV3ZwwAAABnaHUwazByai40c24MAAAAZnoxM294 + NGgubWxqDAAAAHMyZ2JjNXBqLnF0NQwAAAAycHJmb3Joai5mYjEMAAAAdm1icm1ucWIubGIzDAAA + AG1paHd2NWxhLmFmZwwAAABkdGhuZTRubC5saWsMAAAAdHh0dmZpdHcubnN2DAAAAGtiZHR5bjBs + LjFhaAwAAABzYmhia3Zhcy5qMm8MAAAAMHJzcDRtZmouZXU1DAAAAHpxeXVzZTV3LmY1NQwAAABr + Z2dwZzVzZS5nYWgMAAAAbTRjaTV4ZXoubGxhDAAAADEycTFkenBxLmEwdAwAAABuY3lyMnFzcy41 + YTAMAAAAc2Zka2VsbW0ub3RyDAAAADRiZWdsMmZtLnh4NQwAAABzdnBscXhoNS5lbHcMAAAAZ3hh + b2FhbzUuZjJ4DAAAAG40c3JkZmt6LjQ0dgwAAABicHR2Mm5qbS50amwMAAAAY2FoZTBidGouYTBz + DAAAAGFkMGQ1dHJoLm0xdgwAAAB6dWswMW9hMy51M3gMAAAAcXoxdm90c2kudXg1DAAAAGl2Yndu + MjAxLnIzNQwAAABveW5xaHd2YS5ldGIMAAAAdHAzaG56b3AuZjVlDAAAAGpxcjJwbHhqLmVldAwA + AABnY2FvZG1iYS56M3MMAAAAandxejBkaGEueGF1DAAAAGt2MG5oMmZuLnZpYgwAAAAxNGMzanEw + dS5peW0MAAAAM212NGw0NTEuaGFsDAAAAGVxbXpoMXgwLjJuawwAAABzbGZub2xndy5jMHgMAAAA + dTNmZjVkdmIuZHozDAAAADVwNWZlMm9pLnN6cwwAAAAybmF5ajFwdS5pZG8MAAAAZDAycmZiM24u + djBhDAAAAGx3eW40d29jLmQyZwwAAAAycjR6bHRubS5qMWoMAAAAMWlyYnltMnQudXdpDAAAADBh + eHpqbTRwLjJycQwAAABibXR1eTBsaS4yZ2UVAhlMSBVwYXJxdWV0LWRvdG5ldC1zY2hlbWEVBgAV + DCUCGAJpZCUAABUMJQIYB3N0cmluZzElAAAVDCUCGAdzdHJpbmcyJQAAFqAfGSwZPCYIHBUMGTUG + CAAZGAJpZBUAFtAPFrhsFrhsJgg8GAM5OTkYATAWABbQDxgDOTk5GAEwAAAAJsBsHBUMGTUGCAAZ + GAdzdHJpbmcxFQAW0A8WuPsBFrj7ASbAbDwYDHp6cTBrZnk0LnZibhgMMDF3d3llNGcucGZzFgAW + 0A8YDHp6cTBrZnk0LnZibhgMMDF3d3llNGcucGZzAAAAJvjnAhwVDBk1BggAGRgHc3RyaW5nMhUA + FtAPFrj7ARa4+wEm+OcCPBgMenpxMGtmeTQudmJuGAwwMXd3eWU0Zy5wZnMWABbQDxgMenpxMGtm + eTQudmJuGAwwMXd3eWU0Zy5wZnMAAAAWqOMEFtAPABk8JrDjBBwVDBk1BggAGRgCaWQVABbQDxb0 + fRb0fSaw4wQ8GAQxOTk5GAQxMDAwFgAW0A8YBDE5OTkYBDEwMDAAAAAmpOEFHBUMGTUGCAAZGAdz + dHJpbmcxFQAW0A8WuPsBFrj7ASak4QU8GAx6emxneXhhNS40eWEYDDAxMWNxYW40Lnl6cxYAFtAP + GAx6emxneXhhNS40eWEYDDAxMWNxYW40Lnl6cwAAACbc3AccFQwZNQYIABkYB3N0cmluZzIVABbQ + Dxa4+wEWuPsBJtzcBzwYDHp6bGd5eGE1LjR5YRgMMDExY3FhbjQueXpzFgAW0A8YDHp6bGd5eGE1 + LjR5YRgMMDExY3FhbjQueXpzAAAAFuT0BBbQDwAoTFBhcnF1ZXQuTmV0IHZlcnNpb24gMy41LjMg + KGJ1aWxkICcwNTc0NTFiMzc2ZmE3ZDM1ODFmMmQxODAxZmIwOTY1YWZiZWFhMGMyJykAxQIAAFBB + UjE= + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '80087' + Content-Type: + - application/json + User-Agent: + - azsdk-python-storage-dfs/12.4.0b1 Python/3.8.5 (Windows-10-10.0.19041-SP0) + x-ms-client-request-id: + - 6137edf4-996d-11eb-b015-c8348e5fffbf + x-ms-date: + - Fri, 09 Apr 2021 19:54:22 GMT + x-ms-version: + - '2020-06-12' + method: PATCH + uri: https://storagename.dfs.core.windows.net/utqqcontainerb38317df/csvfileb38317df?action=append&position=0 + response: + body: + string: '' + headers: + Content-Length: + - '0' + Date: + - Fri, 09 Apr 2021 19:54:21 GMT + Server: + - Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0 + x-ms-request-id: + - 1577b504-101f-0007-367a-2d398a000000 + x-ms-request-server-encrypted: + - 'true' + x-ms-version: + - '2020-06-12' + status: + code: 202 + message: Accepted +- request: + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '0' + If-Match: + - '"0x8D8FB9145645382"' + User-Agent: + - azsdk-python-storage-dfs/12.4.0b1 Python/3.8.5 (Windows-10-10.0.19041-SP0) + x-ms-client-request-id: + - 615e1394-996d-11eb-915d-c8348e5fffbf + x-ms-date: + - Fri, 09 Apr 2021 19:54:22 GMT + x-ms-version: + - '2020-06-12' + method: PATCH + uri: https://storagename.dfs.core.windows.net/utqqcontainerb38317df/csvfileb38317df?action=flush&position=80087&close=true + response: + body: + string: '' + headers: + Content-Length: + - '0' + Date: + - Fri, 09 Apr 2021 19:54:22 GMT + ETag: + - '"0x8D8FB9145A3D919"' + Last-Modified: + - Fri, 09 Apr 2021 19:54:23 GMT + Server: + - Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0 + x-ms-request-id: + - 1577b505-101f-0007-377a-2d398a000000 + x-ms-request-server-encrypted: + - 'false' + x-ms-version: + - '2020-06-12' + status: + code: 200 + message: OK +- request: + body: ' + + SQLselect * from blobstorage + where id < 1;parquet + ' + headers: + Accept: + - application/xml + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '293' + Content-Type: + - application/xml + User-Agent: + - azsdk-python-storage-dfs/12.4.0b1 Python/3.8.5 (Windows-10-10.0.19041-SP0) + x-ms-client-request-id: + - 617433b5-996d-11eb-a99a-c8348e5fffbf + x-ms-date: + - Fri, 09 Apr 2021 19:54:23 GMT + x-ms-encryption-algorithm: + - AES256 + x-ms-version: + - '2020-08-04' + method: POST + uri: https://storagename.blob.core.windows.net/utqqcontainerb38317df/csvfileb38317df?comp=query + response: + body: + string: !!binary | + T2JqAQIWYXZyby5zY2hlbWHOHlsKICB7CiAgICAidHlwZSI6ICJyZWNvcmQiLAogICAgIm5hbWUi + OiAiY29tLm1pY3Jvc29mdC5henVyZS5zdG9yYWdlLnF1ZXJ5QmxvYkNvbnRlbnRzLnJlc3VsdERh + dGEiLAogICAgImRvYyI6ICJIb2xkcyByZXN1bHQgZGF0YSBpbiB0aGUgZm9ybWF0IHNwZWNpZmll + ZCBmb3IgdGhpcyBxdWVyeSAoQ1NWLCBKU09OLCBldGMuKS4iLAogICAgImZpZWxkcyI6IFsKICAg + ICAgewogICAgICAgICJuYW1lIjogImRhdGEiLAogICAgICAgICJ0eXBlIjogImJ5dGVzIgogICAg + ICB9CiAgICBdCiAgfSwKICB7CiAgICAidHlwZSI6ICJyZWNvcmQiLAogICAgIm5hbWUiOiAiY29t + Lm1pY3Jvc29mdC5henVyZS5zdG9yYWdlLnF1ZXJ5QmxvYkNvbnRlbnRzLmVycm9yIiwKICAgICJk + b2MiOiAiQW4gZXJyb3IgdGhhdCBvY2N1cnJlZCB3aGlsZSBwcm9jZXNzaW5nIHRoZSBxdWVyeS4i + LAogICAgImZpZWxkcyI6IFsKICAgICAgewogICAgICAgICJuYW1lIjogImZhdGFsIiwKICAgICAg + ICAidHlwZSI6ICJib29sZWFuIiwKICAgICAgICAiZG9jIjogIklmIHRydWUsIHRoaXMgZXJyb3Ig + cHJldmVudHMgZnVydGhlciBxdWVyeSBwcm9jZXNzaW5nLiAgTW9yZSByZXN1bHQgZGF0YSBtYXkg + YmUgcmV0dXJuZWQsIGJ1dCB0aGVyZSBpcyBubyBndWFyYW50ZWUgdGhhdCBhbGwgb2YgdGhlIG9y + aWdpbmFsIGRhdGEgd2lsbCBiZSBwcm9jZXNzZWQuICBJZiBmYWxzZSwgdGhpcyBlcnJvciBkb2Vz + IG5vdCBwcmV2ZW50IGZ1cnRoZXIgcXVlcnkgcHJvY2Vzc2luZy4iCiAgICAgIH0sCiAgICAgIHsK + ICAgICAgICAibmFtZSI6ICJuYW1lIiwKICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAg + ICJkb2MiOiAiVGhlIG5hbWUgb2YgdGhlIGVycm9yIgogICAgICB9LAogICAgICB7CiAgICAgICAg + Im5hbWUiOiAiZGVzY3JpcHRpb24iLAogICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAg + ImRvYyI6ICJBIGRlc2NyaXB0aW9uIG9mIHRoZSBlcnJvciIKICAgICAgfSwKICAgICAgewogICAg + ICAgICJuYW1lIjogInBvc2l0aW9uIiwKICAgICAgICAidHlwZSI6ICJsb25nIiwKICAgICAgICAi + ZG9jIjogIlRoZSByZWNvcmQgb2Zmc2V0IGluIHRoZSBibG9iIGF0IHdoaWNoIHRoZSBlcnJvciBv + Y2N1cnJlZCIKICAgICAgfQogICAgXQogIH0sCiAgewogICAgInR5cGUiOiAicmVjb3JkIiwKICAg + ICJuYW1lIjogImNvbS5taWNyb3NvZnQuYXp1cmUuc3RvcmFnZS5xdWVyeUJsb2JDb250ZW50cy5w + cm9ncmVzcyIsCiAgICAiZG9jIjogIkluZm9ybWF0aW9uIGFib3V0IHRoZSBwcm9ncmVzcyBvZiB0 + aGUgcXVlcnkiLAogICAgImZpZWxkcyI6IFsKICAgICAgewogICAgICAgICJuYW1lIjogImJ5dGVz + U2Nhbm5lZCIsCiAgICAgICAgInR5cGUiOiAibG9uZyIsCiAgICAgICAgImRvYyI6ICJUaGUgbnVt + YmVyIG9mIGJ5dGVzIHRoYXQgaGF2ZSBiZWVuIHNjYW5uZWQiCiAgICAgIH0sCiAgICAgIHsKICAg + ICAgICAibmFtZSI6ICJ0b3RhbEJ5dGVzIiwKICAgICAgICAidHlwZSI6ICJsb25nIiwKICAgICAg + ICAiZG9jIjogIlRoZSB0b3RhbCBudW1iZXIgb2YgYnl0ZXMgdG8gYmUgc2Nhbm5lZCBpbiB0aGlz + IHF1ZXJ5IgogICAgICB9CiAgICBdCiAgfSwKICB7CiAgICAidHlwZSI6ICJyZWNvcmQiLAogICAg + Im5hbWUiOiAiY29tLm1pY3Jvc29mdC5henVyZS5zdG9yYWdlLnF1ZXJ5QmxvYkNvbnRlbnRzLmVu + ZCIsCiAgICAiZG9jIjogIlNlbnQgYXMgdGhlIGZpbmFsIG1lc3NhZ2Ugb2YgdGhlIHJlc3BvbnNl + LCBpbmRpY2F0aW5nIHRoYXQgYWxsIHJlc3VsdHMgaGF2ZSBiZWVuIHNlbnQuIiwKICAgICJmaWVs + ZHMiOiBbCiAgICAgIHsKICAgICAgICAibmFtZSI6ICJ0b3RhbEJ5dGVzIiwKICAgICAgICAidHlw + ZSI6ICJsb25nIiwKICAgICAgICAiZG9jIjogIlRoZSB0b3RhbCBudW1iZXIgb2YgYnl0ZXMgc2Nh + bm5lZCBpbiB0aGlzIHF1ZXJ5IgogICAgICB9CiAgICBdCiAgfQpdCgDTcqc2iYsPRaCt87a9W16y + AjwAODAsbWRpZmp0NTUuZWEzLG1kaWZqdDU1LmVhMwrTcqc2iYsPRaCt87a9W16yAg4Ewu4EruMJ + 03KnNomLD0WgrfO2vVtesgIIBq7jCdNypzaJiw9FoK3ztr1bXrI= + headers: + Accept-Ranges: + - bytes + Content-Type: + - avro/binary + Date: + - Fri, 09 Apr 2021 19:54:23 GMT + ETag: + - '"0x8D8FB9145A3D919"' + Last-Modified: + - Fri, 09 Apr 2021 19:54:23 GMT + Server: + - Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0 + Transfer-Encoding: + - chunked + x-ms-blob-type: + - BlockBlob + x-ms-creation-time: + - Fri, 09 Apr 2021 04:03:15 GMT + x-ms-lease-state: + - available + x-ms-lease-status: + - unlocked + x-ms-request-id: + - 6f7f6af3-e01e-0012-6f7a-2dfb13000000 + x-ms-server-encrypted: + - 'true' + x-ms-version: + - '2020-08-04' + status: + code: 200 + message: OK +version: 1 diff --git a/sdk/storage/azure-storage-file-datalake/tests/recordings/test_quick_query.test_quick_query_output_in_parquet_format.yaml b/sdk/storage/azure-storage-file-datalake/tests/recordings/test_quick_query.test_quick_query_output_in_parquet_format.yaml new file mode 100644 index 000000000000..c408d32ecffa --- /dev/null +++ b/sdk/storage/azure-storage-file-datalake/tests/recordings/test_quick_query.test_quick_query_output_in_parquet_format.yaml @@ -0,0 +1,1542 @@ +interactions: +- request: + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '0' + User-Agent: + - azsdk-python-storage-dfs/12.4.0b1 Python/3.8.5 (Windows-10-10.0.19041-SP0) + x-ms-client-request-id: + - 66737680-996d-11eb-a17f-c8348e5fffbf + x-ms-date: + - Fri, 09 Apr 2021 19:54:31 GMT + x-ms-properties: + - '' + x-ms-version: + - '2020-06-12' + method: PUT + uri: https://storagename.dfs.core.windows.net/utqqcontainercdb31860/csvfilecdb31860?resource=file + response: + body: + string: '' + headers: + Content-Length: + - '0' + Date: + - Fri, 09 Apr 2021 19:54:31 GMT + ETag: + - '"0x8D8FB914AE5DEAD"' + Last-Modified: + - Fri, 09 Apr 2021 19:54:31 GMT + Server: + - Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0 + x-ms-request-id: + - 1b04ce30-501f-000b-7c7a-2dd77b000000 + x-ms-request-server-encrypted: + - 'true' + x-ms-version: + - '2020-06-12' + status: + code: 201 + message: Created +- request: + body: !!binary | + UEFSMRUAFeJrFeJrLBXQDxUAFQYVBhwYAzk5ORgBMBYAFtAPGAM5OTkYATAAAAADAAAA0A8BAQAA + ADABAAAAMQEAAAAyAQAAADMBAAAANAEAAAA1AQAAADYBAAAANwEAAAA4AQAAADkCAAAAMTACAAAA + MTECAAAAMTICAAAAMTMCAAAAMTQCAAAAMTUCAAAAMTYCAAAAMTcCAAAAMTgCAAAAMTkCAAAAMjAC + AAAAMjECAAAAMjICAAAAMjMCAAAAMjQCAAAAMjUCAAAAMjYCAAAAMjcCAAAAMjgCAAAAMjkCAAAA + MzACAAAAMzECAAAAMzICAAAAMzMCAAAAMzQCAAAAMzUCAAAAMzYCAAAAMzcCAAAAMzgCAAAAMzkC + AAAANDACAAAANDECAAAANDICAAAANDMCAAAANDQCAAAANDUCAAAANDYCAAAANDcCAAAANDgCAAAA + NDkCAAAANTACAAAANTECAAAANTICAAAANTMCAAAANTQCAAAANTUCAAAANTYCAAAANTcCAAAANTgC + AAAANTkCAAAANjACAAAANjECAAAANjICAAAANjMCAAAANjQCAAAANjUCAAAANjYCAAAANjcCAAAA + NjgCAAAANjkCAAAANzACAAAANzECAAAANzICAAAANzMCAAAANzQCAAAANzUCAAAANzYCAAAANzcC + AAAANzgCAAAANzkCAAAAODACAAAAODECAAAAODICAAAAODMCAAAAODQCAAAAODUCAAAAODYCAAAA + ODcCAAAAODgCAAAAODkCAAAAOTACAAAAOTECAAAAOTICAAAAOTMCAAAAOTQCAAAAOTUCAAAAOTYC + AAAAOTcCAAAAOTgCAAAAOTkDAAAAMTAwAwAAADEwMQMAAAAxMDIDAAAAMTAzAwAAADEwNAMAAAAx + MDUDAAAAMTA2AwAAADEwNwMAAAAxMDgDAAAAMTA5AwAAADExMAMAAAAxMTEDAAAAMTEyAwAAADEx + MwMAAAAxMTQDAAAAMTE1AwAAADExNgMAAAAxMTcDAAAAMTE4AwAAADExOQMAAAAxMjADAAAAMTIx + AwAAADEyMgMAAAAxMjMDAAAAMTI0AwAAADEyNQMAAAAxMjYDAAAAMTI3AwAAADEyOAMAAAAxMjkD + AAAAMTMwAwAAADEzMQMAAAAxMzIDAAAAMTMzAwAAADEzNAMAAAAxMzUDAAAAMTM2AwAAADEzNwMA + AAAxMzgDAAAAMTM5AwAAADE0MAMAAAAxNDEDAAAAMTQyAwAAADE0MwMAAAAxNDQDAAAAMTQ1AwAA + ADE0NgMAAAAxNDcDAAAAMTQ4AwAAADE0OQMAAAAxNTADAAAAMTUxAwAAADE1MgMAAAAxNTMDAAAA + MTU0AwAAADE1NQMAAAAxNTYDAAAAMTU3AwAAADE1OAMAAAAxNTkDAAAAMTYwAwAAADE2MQMAAAAx + NjIDAAAAMTYzAwAAADE2NAMAAAAxNjUDAAAAMTY2AwAAADE2NwMAAAAxNjgDAAAAMTY5AwAAADE3 + MAMAAAAxNzEDAAAAMTcyAwAAADE3MwMAAAAxNzQDAAAAMTc1AwAAADE3NgMAAAAxNzcDAAAAMTc4 + AwAAADE3OQMAAAAxODADAAAAMTgxAwAAADE4MgMAAAAxODMDAAAAMTg0AwAAADE4NQMAAAAxODYD + AAAAMTg3AwAAADE4OAMAAAAxODkDAAAAMTkwAwAAADE5MQMAAAAxOTIDAAAAMTkzAwAAADE5NAMA + AAAxOTUDAAAAMTk2AwAAADE5NwMAAAAxOTgDAAAAMTk5AwAAADIwMAMAAAAyMDEDAAAAMjAyAwAA + ADIwMwMAAAAyMDQDAAAAMjA1AwAAADIwNgMAAAAyMDcDAAAAMjA4AwAAADIwOQMAAAAyMTADAAAA + MjExAwAAADIxMgMAAAAyMTMDAAAAMjE0AwAAADIxNQMAAAAyMTYDAAAAMjE3AwAAADIxOAMAAAAy + MTkDAAAAMjIwAwAAADIyMQMAAAAyMjIDAAAAMjIzAwAAADIyNAMAAAAyMjUDAAAAMjI2AwAAADIy + NwMAAAAyMjgDAAAAMjI5AwAAADIzMAMAAAAyMzEDAAAAMjMyAwAAADIzMwMAAAAyMzQDAAAAMjM1 + AwAAADIzNgMAAAAyMzcDAAAAMjM4AwAAADIzOQMAAAAyNDADAAAAMjQxAwAAADI0MgMAAAAyNDMD + AAAAMjQ0AwAAADI0NQMAAAAyNDYDAAAAMjQ3AwAAADI0OAMAAAAyNDkDAAAAMjUwAwAAADI1MQMA + AAAyNTIDAAAAMjUzAwAAADI1NAMAAAAyNTUDAAAAMjU2AwAAADI1NwMAAAAyNTgDAAAAMjU5AwAA + ADI2MAMAAAAyNjEDAAAAMjYyAwAAADI2MwMAAAAyNjQDAAAAMjY1AwAAADI2NgMAAAAyNjcDAAAA + MjY4AwAAADI2OQMAAAAyNzADAAAAMjcxAwAAADI3MgMAAAAyNzMDAAAAMjc0AwAAADI3NQMAAAAy + NzYDAAAAMjc3AwAAADI3OAMAAAAyNzkDAAAAMjgwAwAAADI4MQMAAAAyODIDAAAAMjgzAwAAADI4 + NAMAAAAyODUDAAAAMjg2AwAAADI4NwMAAAAyODgDAAAAMjg5AwAAADI5MAMAAAAyOTEDAAAAMjky + AwAAADI5MwMAAAAyOTQDAAAAMjk1AwAAADI5NgMAAAAyOTcDAAAAMjk4AwAAADI5OQMAAAAzMDAD + AAAAMzAxAwAAADMwMgMAAAAzMDMDAAAAMzA0AwAAADMwNQMAAAAzMDYDAAAAMzA3AwAAADMwOAMA + AAAzMDkDAAAAMzEwAwAAADMxMQMAAAAzMTIDAAAAMzEzAwAAADMxNAMAAAAzMTUDAAAAMzE2AwAA + ADMxNwMAAAAzMTgDAAAAMzE5AwAAADMyMAMAAAAzMjEDAAAAMzIyAwAAADMyMwMAAAAzMjQDAAAA + MzI1AwAAADMyNgMAAAAzMjcDAAAAMzI4AwAAADMyOQMAAAAzMzADAAAAMzMxAwAAADMzMgMAAAAz + MzMDAAAAMzM0AwAAADMzNQMAAAAzMzYDAAAAMzM3AwAAADMzOAMAAAAzMzkDAAAAMzQwAwAAADM0 + MQMAAAAzNDIDAAAAMzQzAwAAADM0NAMAAAAzNDUDAAAAMzQ2AwAAADM0NwMAAAAzNDgDAAAAMzQ5 + AwAAADM1MAMAAAAzNTEDAAAAMzUyAwAAADM1MwMAAAAzNTQDAAAAMzU1AwAAADM1NgMAAAAzNTcD + AAAAMzU4AwAAADM1OQMAAAAzNjADAAAAMzYxAwAAADM2MgMAAAAzNjMDAAAAMzY0AwAAADM2NQMA + AAAzNjYDAAAAMzY3AwAAADM2OAMAAAAzNjkDAAAAMzcwAwAAADM3MQMAAAAzNzIDAAAAMzczAwAA + ADM3NAMAAAAzNzUDAAAAMzc2AwAAADM3NwMAAAAzNzgDAAAAMzc5AwAAADM4MAMAAAAzODEDAAAA + MzgyAwAAADM4MwMAAAAzODQDAAAAMzg1AwAAADM4NgMAAAAzODcDAAAAMzg4AwAAADM4OQMAAAAz + OTADAAAAMzkxAwAAADM5MgMAAAAzOTMDAAAAMzk0AwAAADM5NQMAAAAzOTYDAAAAMzk3AwAAADM5 + OAMAAAAzOTkDAAAANDAwAwAAADQwMQMAAAA0MDIDAAAANDAzAwAAADQwNAMAAAA0MDUDAAAANDA2 + AwAAADQwNwMAAAA0MDgDAAAANDA5AwAAADQxMAMAAAA0MTEDAAAANDEyAwAAADQxMwMAAAA0MTQD + AAAANDE1AwAAADQxNgMAAAA0MTcDAAAANDE4AwAAADQxOQMAAAA0MjADAAAANDIxAwAAADQyMgMA + AAA0MjMDAAAANDI0AwAAADQyNQMAAAA0MjYDAAAANDI3AwAAADQyOAMAAAA0MjkDAAAANDMwAwAA + ADQzMQMAAAA0MzIDAAAANDMzAwAAADQzNAMAAAA0MzUDAAAANDM2AwAAADQzNwMAAAA0MzgDAAAA + NDM5AwAAADQ0MAMAAAA0NDEDAAAANDQyAwAAADQ0MwMAAAA0NDQDAAAANDQ1AwAAADQ0NgMAAAA0 + NDcDAAAANDQ4AwAAADQ0OQMAAAA0NTADAAAANDUxAwAAADQ1MgMAAAA0NTMDAAAANDU0AwAAADQ1 + NQMAAAA0NTYDAAAANDU3AwAAADQ1OAMAAAA0NTkDAAAANDYwAwAAADQ2MQMAAAA0NjIDAAAANDYz + AwAAADQ2NAMAAAA0NjUDAAAANDY2AwAAADQ2NwMAAAA0NjgDAAAANDY5AwAAADQ3MAMAAAA0NzED + AAAANDcyAwAAADQ3MwMAAAA0NzQDAAAANDc1AwAAADQ3NgMAAAA0NzcDAAAANDc4AwAAADQ3OQMA + AAA0ODADAAAANDgxAwAAADQ4MgMAAAA0ODMDAAAANDg0AwAAADQ4NQMAAAA0ODYDAAAANDg3AwAA + ADQ4OAMAAAA0ODkDAAAANDkwAwAAADQ5MQMAAAA0OTIDAAAANDkzAwAAADQ5NAMAAAA0OTUDAAAA + NDk2AwAAADQ5NwMAAAA0OTgDAAAANDk5AwAAADUwMAMAAAA1MDEDAAAANTAyAwAAADUwMwMAAAA1 + MDQDAAAANTA1AwAAADUwNgMAAAA1MDcDAAAANTA4AwAAADUwOQMAAAA1MTADAAAANTExAwAAADUx + MgMAAAA1MTMDAAAANTE0AwAAADUxNQMAAAA1MTYDAAAANTE3AwAAADUxOAMAAAA1MTkDAAAANTIw + AwAAADUyMQMAAAA1MjIDAAAANTIzAwAAADUyNAMAAAA1MjUDAAAANTI2AwAAADUyNwMAAAA1MjgD + AAAANTI5AwAAADUzMAMAAAA1MzEDAAAANTMyAwAAADUzMwMAAAA1MzQDAAAANTM1AwAAADUzNgMA + AAA1MzcDAAAANTM4AwAAADUzOQMAAAA1NDADAAAANTQxAwAAADU0MgMAAAA1NDMDAAAANTQ0AwAA + ADU0NQMAAAA1NDYDAAAANTQ3AwAAADU0OAMAAAA1NDkDAAAANTUwAwAAADU1MQMAAAA1NTIDAAAA + NTUzAwAAADU1NAMAAAA1NTUDAAAANTU2AwAAADU1NwMAAAA1NTgDAAAANTU5AwAAADU2MAMAAAA1 + NjEDAAAANTYyAwAAADU2MwMAAAA1NjQDAAAANTY1AwAAADU2NgMAAAA1NjcDAAAANTY4AwAAADU2 + OQMAAAA1NzADAAAANTcxAwAAADU3MgMAAAA1NzMDAAAANTc0AwAAADU3NQMAAAA1NzYDAAAANTc3 + AwAAADU3OAMAAAA1NzkDAAAANTgwAwAAADU4MQMAAAA1ODIDAAAANTgzAwAAADU4NAMAAAA1ODUD + AAAANTg2AwAAADU4NwMAAAA1ODgDAAAANTg5AwAAADU5MAMAAAA1OTEDAAAANTkyAwAAADU5MwMA + AAA1OTQDAAAANTk1AwAAADU5NgMAAAA1OTcDAAAANTk4AwAAADU5OQMAAAA2MDADAAAANjAxAwAA + ADYwMgMAAAA2MDMDAAAANjA0AwAAADYwNQMAAAA2MDYDAAAANjA3AwAAADYwOAMAAAA2MDkDAAAA + NjEwAwAAADYxMQMAAAA2MTIDAAAANjEzAwAAADYxNAMAAAA2MTUDAAAANjE2AwAAADYxNwMAAAA2 + MTgDAAAANjE5AwAAADYyMAMAAAA2MjEDAAAANjIyAwAAADYyMwMAAAA2MjQDAAAANjI1AwAAADYy + NgMAAAA2MjcDAAAANjI4AwAAADYyOQMAAAA2MzADAAAANjMxAwAAADYzMgMAAAA2MzMDAAAANjM0 + AwAAADYzNQMAAAA2MzYDAAAANjM3AwAAADYzOAMAAAA2MzkDAAAANjQwAwAAADY0MQMAAAA2NDID + AAAANjQzAwAAADY0NAMAAAA2NDUDAAAANjQ2AwAAADY0NwMAAAA2NDgDAAAANjQ5AwAAADY1MAMA + AAA2NTEDAAAANjUyAwAAADY1MwMAAAA2NTQDAAAANjU1AwAAADY1NgMAAAA2NTcDAAAANjU4AwAA + ADY1OQMAAAA2NjADAAAANjYxAwAAADY2MgMAAAA2NjMDAAAANjY0AwAAADY2NQMAAAA2NjYDAAAA + NjY3AwAAADY2OAMAAAA2NjkDAAAANjcwAwAAADY3MQMAAAA2NzIDAAAANjczAwAAADY3NAMAAAA2 + NzUDAAAANjc2AwAAADY3NwMAAAA2NzgDAAAANjc5AwAAADY4MAMAAAA2ODEDAAAANjgyAwAAADY4 + MwMAAAA2ODQDAAAANjg1AwAAADY4NgMAAAA2ODcDAAAANjg4AwAAADY4OQMAAAA2OTADAAAANjkx + AwAAADY5MgMAAAA2OTMDAAAANjk0AwAAADY5NQMAAAA2OTYDAAAANjk3AwAAADY5OAMAAAA2OTkD + AAAANzAwAwAAADcwMQMAAAA3MDIDAAAANzAzAwAAADcwNAMAAAA3MDUDAAAANzA2AwAAADcwNwMA + AAA3MDgDAAAANzA5AwAAADcxMAMAAAA3MTEDAAAANzEyAwAAADcxMwMAAAA3MTQDAAAANzE1AwAA + ADcxNgMAAAA3MTcDAAAANzE4AwAAADcxOQMAAAA3MjADAAAANzIxAwAAADcyMgMAAAA3MjMDAAAA + NzI0AwAAADcyNQMAAAA3MjYDAAAANzI3AwAAADcyOAMAAAA3MjkDAAAANzMwAwAAADczMQMAAAA3 + MzIDAAAANzMzAwAAADczNAMAAAA3MzUDAAAANzM2AwAAADczNwMAAAA3MzgDAAAANzM5AwAAADc0 + MAMAAAA3NDEDAAAANzQyAwAAADc0MwMAAAA3NDQDAAAANzQ1AwAAADc0NgMAAAA3NDcDAAAANzQ4 + AwAAADc0OQMAAAA3NTADAAAANzUxAwAAADc1MgMAAAA3NTMDAAAANzU0AwAAADc1NQMAAAA3NTYD + AAAANzU3AwAAADc1OAMAAAA3NTkDAAAANzYwAwAAADc2MQMAAAA3NjIDAAAANzYzAwAAADc2NAMA + AAA3NjUDAAAANzY2AwAAADc2NwMAAAA3NjgDAAAANzY5AwAAADc3MAMAAAA3NzEDAAAANzcyAwAA + ADc3MwMAAAA3NzQDAAAANzc1AwAAADc3NgMAAAA3NzcDAAAANzc4AwAAADc3OQMAAAA3ODADAAAA + NzgxAwAAADc4MgMAAAA3ODMDAAAANzg0AwAAADc4NQMAAAA3ODYDAAAANzg3AwAAADc4OAMAAAA3 + ODkDAAAANzkwAwAAADc5MQMAAAA3OTIDAAAANzkzAwAAADc5NAMAAAA3OTUDAAAANzk2AwAAADc5 + NwMAAAA3OTgDAAAANzk5AwAAADgwMAMAAAA4MDEDAAAAODAyAwAAADgwMwMAAAA4MDQDAAAAODA1 + AwAAADgwNgMAAAA4MDcDAAAAODA4AwAAADgwOQMAAAA4MTADAAAAODExAwAAADgxMgMAAAA4MTMD + AAAAODE0AwAAADgxNQMAAAA4MTYDAAAAODE3AwAAADgxOAMAAAA4MTkDAAAAODIwAwAAADgyMQMA + AAA4MjIDAAAAODIzAwAAADgyNAMAAAA4MjUDAAAAODI2AwAAADgyNwMAAAA4MjgDAAAAODI5AwAA + ADgzMAMAAAA4MzEDAAAAODMyAwAAADgzMwMAAAA4MzQDAAAAODM1AwAAADgzNgMAAAA4MzcDAAAA + ODM4AwAAADgzOQMAAAA4NDADAAAAODQxAwAAADg0MgMAAAA4NDMDAAAAODQ0AwAAADg0NQMAAAA4 + NDYDAAAAODQ3AwAAADg0OAMAAAA4NDkDAAAAODUwAwAAADg1MQMAAAA4NTIDAAAAODUzAwAAADg1 + NAMAAAA4NTUDAAAAODU2AwAAADg1NwMAAAA4NTgDAAAAODU5AwAAADg2MAMAAAA4NjEDAAAAODYy + AwAAADg2MwMAAAA4NjQDAAAAODY1AwAAADg2NgMAAAA4NjcDAAAAODY4AwAAADg2OQMAAAA4NzAD + AAAAODcxAwAAADg3MgMAAAA4NzMDAAAAODc0AwAAADg3NQMAAAA4NzYDAAAAODc3AwAAADg3OAMA + AAA4NzkDAAAAODgwAwAAADg4MQMAAAA4ODIDAAAAODgzAwAAADg4NAMAAAA4ODUDAAAAODg2AwAA + ADg4NwMAAAA4ODgDAAAAODg5AwAAADg5MAMAAAA4OTEDAAAAODkyAwAAADg5MwMAAAA4OTQDAAAA + ODk1AwAAADg5NgMAAAA4OTcDAAAAODk4AwAAADg5OQMAAAA5MDADAAAAOTAxAwAAADkwMgMAAAA5 + MDMDAAAAOTA0AwAAADkwNQMAAAA5MDYDAAAAOTA3AwAAADkwOAMAAAA5MDkDAAAAOTEwAwAAADkx + MQMAAAA5MTIDAAAAOTEzAwAAADkxNAMAAAA5MTUDAAAAOTE2AwAAADkxNwMAAAA5MTgDAAAAOTE5 + AwAAADkyMAMAAAA5MjEDAAAAOTIyAwAAADkyMwMAAAA5MjQDAAAAOTI1AwAAADkyNgMAAAA5MjcD + AAAAOTI4AwAAADkyOQMAAAA5MzADAAAAOTMxAwAAADkzMgMAAAA5MzMDAAAAOTM0AwAAADkzNQMA + AAA5MzYDAAAAOTM3AwAAADkzOAMAAAA5MzkDAAAAOTQwAwAAADk0MQMAAAA5NDIDAAAAOTQzAwAA + ADk0NAMAAAA5NDUDAAAAOTQ2AwAAADk0NwMAAAA5NDgDAAAAOTQ5AwAAADk1MAMAAAA5NTEDAAAA + OTUyAwAAADk1MwMAAAA5NTQDAAAAOTU1AwAAADk1NgMAAAA5NTcDAAAAOTU4AwAAADk1OQMAAAA5 + NjADAAAAOTYxAwAAADk2MgMAAAA5NjMDAAAAOTY0AwAAADk2NQMAAAA5NjYDAAAAOTY3AwAAADk2 + OAMAAAA5NjkDAAAAOTcwAwAAADk3MQMAAAA5NzIDAAAAOTczAwAAADk3NAMAAAA5NzUDAAAAOTc2 + AwAAADk3NwMAAAA5NzgDAAAAOTc5AwAAADk4MAMAAAA5ODEDAAAAOTgyAwAAADk4MwMAAAA5ODQD + AAAAOTg1AwAAADk4NgMAAAA5ODcDAAAAOTg4AwAAADk4OQMAAAA5OTADAAAAOTkxAwAAADk5MgMA + AAA5OTMDAAAAOTk0AwAAADk5NQMAAAA5OTYDAAAAOTk3AwAAADk5OAMAAAA5OTkVABWO+gEVjvoB + LBXQDxUAFQYVBhwYDHp6cTBrZnk0LnZibhgMMDF3d3llNGcucGZzFgAW0A8YDHp6cTBrZnk0LnZi + bhgMMDF3d3llNGcucGZzAAAAAwAAANAPAQwAAABtZGlmanQ1NS5lYTMMAAAANWRtdnFldmcuamsw + DAAAAHNmdGdtZ3N4LmIxZAwAAAB6cm9xdnM1dC5samkMAAAAYW8zamF0bmMuMXZoDAAAAHUzYmZ1 + dmRsLjF3cgwAAABqcWN3M2VyMy5sdDIMAAAAc2gxc3doZXQuYnczDAAAAGkwc3EzMDVvLmg1dQwA + AAB1NTNjZWxhMC5zZ2IMAAAAemZybTVobHEud3J1DAAAAGN6Y2Nra3QyLnJpMAwAAABxMG40NTJl + NC51bnkMAAAAanVvenVtYWEudmZ2DAAAADFtdGZvMTNtLnhlaQwAAABjd3RhZWQyci5xZHcMAAAA + M215czB5a2YuYWdqDAAAAHZlYXVpbTNtLjNhMwwAAAB1NHh1cWZxci5ubXEMAAAAbHd1aG5kbTAu + d2pmDAAAAGtqdXkycm50LnVqdAwAAABxeGNpd3JpMS5seDEMAAAAbHBlYnRqNXcuZmMwDAAAAHp0 + aWoxcWNiLml5MwwAAAAzbXdyZXpwMi5xaTAMAAAAYXoyamF3M2EuY2RmDAAAAHBjanpvdzF1Lm0w + MAwAAAAzZHlxdmg0MS5wYWMMAAAAMGFqY3lkcHMuYTRkDAAAAGI1MnJtY2htLnNoZQwAAABwczBz + ZGZzei5lcmMMAAAAZjUxdDNkaGIuanZjDAAAADV6cmhzYnpqLjF4YgwAAABqMmxtZnpzMi5xZmIM + AAAAcjBlcngxaXQuaXRyDAAAAGpiMGRzdTAxLnBlbwwAAAAzd2owZGsybi5hczIMAAAAem5iemhn + aXAuY2xxDAAAAG5xYmJwcHJ1LmZncQwAAABncDF4emYxZy4zeGQMAAAAcm95ZG9udWsuYjJqDAAA + AGVlZ2czY3FzLml0eAwAAABtNHYxd29sdC40bGgMAAAAcHV4MHp5ZGMubHZsDAAAAGRiZGZtc3Iy + LmlrNAwAAAB1cXQ1c2EzaS5hbmsMAAAANWpjaWpoMWcua2dtDAAAAHIwbm50eTRwLnFlMAwAAAA0 + eGMxcGMzai5vemYMAAAAZDN4dzNoZ2EuYWZkDAAAAHZlMHVtZnl5Lms1agwAAABhcHljZ2h1aC5h + bHIMAAAAY3l6Z2twaDQuM2ljDAAAAGJjZTJ5dmNxLmhhbQwAAABveGxhdGdudy5hdG8MAAAAdGpn + b2tzZTIudTRzDAAAAGt1MWw1NDVkLnB3ZgwAAAB1Y2VhYmxjcS5odnUMAAAAc2x3dXZjaXkucXlm + DAAAAG9seWMwcml2LmhuYgwAAAB3cmN6bXEwbC5yZ3cMAAAAc3F3aTVla3UuZnl6DAAAAHdua2Vz + Y25rLm5kbwwAAABoajRzbDVqMS5mdXkMAAAAczR4bmJoMmMudGgwDAAAADVobHZvZ2l3LndtMQwA + AABjcTBuNDVwei5mc3AMAAAAemYydndqaXIuZXVxDAAAADVqeHZkNTMwLnp2NQwAAABqc2N2b3lj + Yy5xcWcMAAAAbHNqbnp2ZmIua3J3DAAAADRwYWliaHoxLnYxcAwAAAB1cmkwMmFjMy5zYnkMAAAA + bWc1cXdiMXEudGVqDAAAAG5sYmd5b2k1LmZkZwwAAABrM3ZiMW1vby5xYWsMAAAAdmN5Z3FzcWUu + dXZiDAAAAGRobWFheWc1LnNrYQwAAAB0dW9sZ3lobS5seGQMAAAAcW1mdXJrMWcucmNnDAAAAHMy + ZmdlMDAzLmNkMQwAAABpM25sY256dy4wNGwMAAAAc2UxNHJmeWwucG1zDAAAAHR0eW9kc251LjQ1 + ZQwAAABtcmQxamJ0Zy5uZjEMAAAAeWNtcG5ldzQueTFnDAAAAHd6dmF6cHZqLmFoeAwAAAA1bXVy + NGt2ei5mZWoMAAAAM2NoYnN6dmYubXl2DAAAAHBldGsyZzVxLmxnZwwAAAA1bTU0Zmdnby5rdjUM + AAAAeXptczVvMHMuNTN6DAAAADB4NTRsZHN5LmdxdgwAAABnZWlzemdhMS53ZnIMAAAAamExY2xh + dHcuNWNpDAAAAG9ydHVzdnlwLnp1dwwAAAAyYTJueHNxbS5hdHIMAAAAeW5sNXR0eWgubTVsDAAA + AG5xY2k0bjUxLjM0dAwAAABrMjRraXpsZC50aXQMAAAAcHBwZmNwMmQuenRxDAAAAGtnbGl5ZXN0 + LmFmdgwAAAAzbGFlb25nbi5qenoMAAAAaDA1djA1YnQuc253DAAAAGVrZGp0Y3U1LjNicAwAAAA0 + dmp3eTJhei5kc3cMAAAAYzR3MjF6ZXAuYWNzDAAAAG1hZmtrdGh1LjN5dAwAAABqaDV2ZGx6eC54 + aGIMAAAAanYzZ2lhMDAuemFxDAAAAGxucjAxemRkLmh0eAwAAABtbmNkZjRudS5idnQMAAAAY3l1 + ajNjcjUuYmVhDAAAAGt2cG5kem94Lm1vbQwAAAAyZjB0c2Vuby5tNWkMAAAAcTJvbGRtbDQuZHly + DAAAAHFqMTBqY3BjLmhrdwwAAABjMXZ3bWtvYi56azUMAAAAdWRtNGFiMXMuM3FtDAAAAGtxZ2I1 + ZndsLnV6MwwAAABla21uYjBoZC55c3IMAAAAYWdqYnNrbnIuMmd5DAAAAGZwNGRqamxsLm1meQwA + AABibzVkZW1oeC5taHcMAAAAcnppZ29ldWkuYnhkDAAAAHhhZmUwaWlrLnQ1ZQwAAABybXZreHN6 + ZS5id2EMAAAAaHRxNWZndm8uaGdlDAAAAGczeXBicGprLnY0ZQwAAABtbXYwb3lieC5rM2cMAAAA + ZGhqMGIxY3kudm5tDAAAAGJoYm5kZGRjLnp1cgwAAABid2NicDQxZC55dG4MAAAAZGhoZ2d0dGku + MWhrDAAAAHFwa3J2MW40LmlvcAwAAABnMGNsdDUxbS5wYnEMAAAAbnhsbGRhYW8ua2RwDAAAADBu + cTV0Y3J3LmpldAwAAAAzNDAzbW9tai5nbGgMAAAAcG1kNHp6aGsueXJzDAAAAGYxcmMwNGp0LjFr + bAwAAAA0dXhmc2loaS5tMHUMAAAAZWx6Z2t4dmoucmplDAAAAGxrdmY1b3gyLmpqMAwAAABhejIy + NG1qci5zZ24MAAAAemYwemFwdW0udnZjDAAAAGNjZnBqMG95LjRpZgwAAABtazB4dXZ5MS5pMjEM + AAAAMjRmbjJ6eHIudGtqDAAAAG96eWZ1b3JuLjFybgwAAABhdnN3dTF2Zy5vYXMMAAAAcmNtaHhv + czMucnptDAAAAGhyajVmZ3NnLjM1MQwAAAB0eWlibmV5bC54aHQMAAAANXIzZHV6b2cuamlnDAAA + AHBuMXJ5ZWFnLmV1bAwAAAB6MmFsbXJ6ZS5tdHkMAAAAenpxMGtmeTQudmJuDAAAAHJ0cTBkZG9n + LjV1ZwwAAAB3ZXRlc2hteS5kYW0MAAAAZWc0M2tvMG8uamhnDAAAAHNxaGdhaW1wLnQ0YgwAAAB6 + cDRtdmh1Yy5xbW0MAAAAM2dnd3F3aHYuZ3MzDAAAAHd1emNxb3Z4LmZqMgwAAAAxbDFtNDFiai5n + ZHcMAAAAdnFib3FrcHQuMzJ2DAAAAGU1bTR0MmVxLnhsNAwAAABmMXhtMTN6eS5langMAAAAMXNl + cTVjaG0ub3BoDAAAAHgzYmt3Z3JyLjViYQwAAAA1MXNqeWNncy51bWgMAAAAMHNrdmJvanEueTBo + DAAAAHo0anJ5YmYwLmVvbAwAAABxaXNmbDRsci5iZXEMAAAAb2xmZ2RhYnoud3djDAAAAGFnem1o + eHV1LmN3aAwAAABiNXB4bTR2dy5yamIMAAAAbTBzb28xanYubG5xDAAAAHJ4dWJ2dmdwLnhnZgwA + AAB0MzJuM3huZS5kZWgMAAAAdWZvMG1sNWsuanphDAAAAGJqZmQ0cWNvLjRtZAwAAABkdnJmZW0y + cC51bGgMAAAAdGJ6Z2loM3YudHQ1DAAAAGlmeTJlcHVrLnNxNQwAAABmYWlsMzVieS5ycTMMAAAA + bTVlZ24yZmsuYWllDAAAADBsaGlrbHFrLm9iegwAAABsb3h0eHlvdS4wMWcMAAAAbXYzcm5lZW8u + cmljDAAAAHI0cnpyeWkyLnF3NQwAAABxcmJsMDVxei4wNWUMAAAAYXcycHJqYmEubTNhDAAAAGJo + Z3l2aXZqLmNiMwwAAABkbHhlcTVjMC5vcnYMAAAAbjN2MDRyaHAuYWV4DAAAAGQxcXZ1ZmltLnBi + dwwAAABveWVyanp2dS5wZm8MAAAAbnVheGtib3YucXB1DAAAAGtkeWRhcWlyLndjcgwAAAB3YTM0 + Y3VrMy5iZGcMAAAAZTVuMWl4anoud3JrDAAAADJycmk0MXBqLmV2cgwAAABoeHJqNHJzZS54Y20M + AAAAdzQxanFwemMueDF4DAAAAGJqbTJhdTNyLnR5eQwAAAB5eTFieDNtZS5tbHgMAAAAZ2I1MG11 + bzUudTNoDAAAAG1pd3Z3anQ0Lmo0aQwAAABxY3JpbWFoby5jbnYMAAAAdWdlc3R5dzEudXBsDAAA + AHNqczJ1NGVwLmdlMwwAAAB6NWZqc2N3Yi41NWIMAAAAaGxmeDFncXMucTRqDAAAAG0zbnduMGUy + LmhscAwAAAB2cm9iendrMS50cG0MAAAAaGFyYXF2ZGYuZDBkDAAAAG16YTR0NXNnLnV1dgwAAAAw + aGh2cGpkNS55bXAMAAAAcHByanQxbWIuZ3RzDAAAADE0dnJkemEyLnhtcwwAAAAzbWltdnF1bi5o + dTAMAAAAa2NsbGdqdGUuY2I0DAAAAHN6eGdsYWlqLjJvdAwAAABubWg0bmg1MS4xbjAMAAAAZ2Zy + b3ZieGwucWJtDAAAAGUwbnBsbndqLnlzZQwAAABkYWhodXF2Mi4zb3IMAAAAcHhuMXQzemkuYWNn + DAAAAHl0MDBodGtrLnd0dwwAAABwend4NTIzMi5ocWcMAAAAbXJ1eWx6dHQua3BiDAAAADBiaWNz + eXFvLmJxZAwAAABndnpwbnZ4cC5xbGwMAAAAM3V6bDFmaXUucmYyDAAAAG9mZGptbnN2LnVodAwA + AAAyeWhndHVzei4xa2YMAAAAMXcwYnhkY24ucHgxDAAAADFwbWx3Ymt2Lml3MwwAAAB5ampoa3Fs + bi5pdWIMAAAAMHh3MW95bG8udHdlDAAAAGtteml4cTR3LnUzcAwAAAB0djEzd3F2eS55dWIMAAAA + b2EyZzNlanQucmlmDAAAAGViZXBnanc1Lm10cQwAAAAyZnkxMzAzZy5ueXUMAAAAMGM1dXR1bWYu + M3RzDAAAAGZuY3RrY2JnLmMwYwwAAABibmtzZXdzZy53em0MAAAAeXlpajEwMW8ucGlqDAAAAHA1 + anlkbHI0Lmh2MgwAAAAzaXBjZGF3dy5hcXIMAAAAMDRtdzV6MnMudW0wDAAAAHdjdHBua2ZoLjJ1 + bQwAAAByenBxc2JzMC41dGEMAAAAdmFoeHF6MGMuMnBtDAAAAHZyMHNza29yLm4ydwwAAAB4dDUw + MHUyYi5yaGsMAAAAY3ZpeTI0ZHguY2t6DAAAAHU0c3dkb2x4LnFqZwwAAABqc2V0emMwZS5qaGUM + AAAAaGI1NGIxdGkuM3F2DAAAAGVyNXFzcHZyLnUxMAwAAABibzRpMnNmdi53MnUMAAAAbXpwdnNu + dWIua2xoDAAAAGtrMG14djBmLnNsbgwAAABjemJlbGVqZy5xaXEMAAAANXhob2txNTQuY29qDAAA + AHVyaWhzbjR5LmVreAwAAAB2dGFtaWl2MC5sd2IMAAAAbHhhc3g1eTQuejMyDAAAAG12dnJ2czFu + LmRodQwAAAB5ejJxa2h3ZC50ZGUMAAAAeGwyYWd6dHYuMXNmDAAAAHZnNGNybm0yLjNjYgwAAABr + NTVmNWtwcS55cWIMAAAAa2RlbGI0bWkucWNtDAAAADN4NWxldGk0LmtkYgwAAABqd3FnYnVtYi5p + cnQMAAAAaGVkbHlpNXQud3FsDAAAAGZ0ZXRzM2tvLmhtbAwAAAByZ2MzdjN5cC4xY3AMAAAAZ3Bo + MzNqcGwudHoxDAAAADR1eDNzd2l5LjNhMgwAAABuY211d3V1MS41ZjAMAAAAaGhrYjBrdzAueWky + DAAAAHZobG1ha3VwLmhzaQwAAAAyd3dkdXFzdy50dzEMAAAAamJmZ3FxeDUudHoyDAAAAG80dWk0 + a2RyLnAybQwAAAB4aWd3ZHBxZS4zencMAAAAamIwemtsbDEuMmFoDAAAADB3eHBpZWlpLmVndAwA + AABuNDNudG81NS5ueWYMAAAAeW1ocjFxeDUuMW9yDAAAAGY0bGZ3b3hpLm50ZgwAAABuemZyYmJ2 + eC5weXkMAAAAeWhyNXZvaXouMnVvDAAAADN5NXAyZXp3Lm55YwwAAABuNXFnYWgxbS5vM28MAAAA + cDNzMWUwMWQua2pnDAAAAGVxZDFoa2NhLnkzbgwAAAB2YTN1Y251ay4yMXAMAAAAYWVrYTE1Z3Eu + cXFkDAAAAGNwdDNvNGZhLnhzdwwAAABsMXMyZ3Fhay52cWQMAAAAanJvM2hzcDMuMmYzDAAAAGJz + Z2FhdTBvLnBvawwAAABybHgxZGVoaC56eHoMAAAAdmZlNGlibmMuYjJyDAAAAG5paTFtc3YzLnBz + dQwAAAA1cWtkbnR5ci5xa3QMAAAAa2Yxa3Yxb3kuaGsyDAAAAHh1bmd3dWlqLnViMwwAAAB2Ymx3 + MndldC5rcm0MAAAAanFkZ29tNWEudmMxDAAAAHk1amtjbG4zLmxwNQwAAABqcW1xeWVkdy5naWEM + AAAAMW9qYjIwaWEudnRqDAAAAHRmaXZkdjIxLmF4MAwAAABwaWQwaHpwcy5kdjUMAAAAd2ZnY2Rx + NGYueG8yDAAAAGNicDA1eG0yLnM1MAwAAABhMjAxYXBodi4wZjQMAAAAZGwxMnl6bXIuZWJmDAAA + AHgwZXZ5dHFyLmEydwwAAABnZm91NHlrMS55NXQMAAAAdzJqZHZsMmIuZmJ3DAAAADJ4a3c0eHhy + LnVpawwAAABneHFsaWdsMi5scHMMAAAAanN5dXl1emguZGhyDAAAAGRkem5lMGpnLmV2NAwAAAB6 + d3pkdXBjcy5mMWMMAAAAbHZzYWFsYzEubWxqDAAAAHhheDBhZTVlLnpjeAwAAAByZmRncm4xZS5y + ZHYMAAAAc201MnV4bm0uYjMwDAAAADF2cWt5NWZhLm54ZwwAAAB5Y3lreGVnYy4zYmwMAAAAajNq + MnV5ZGIuZ3JmDAAAAGh6aHozNG1mLnB6NAwAAABhMHJzaWUxci5pcTUMAAAAMGp1cmoyMWkuNDAz + DAAAADAyM3c0YnJ4LjNzMAwAAAA0em95YjRzdy4zbXMMAAAAcGlvMnM1MHAueGprDAAAAHBpYWpi + bXpyLmgzcgwAAAA1ZDMxeW5ndS54a3IMAAAAZ2dlMGMwdWEucmswDAAAAGpvZHIxbHVjLmk0cAwA + AAAxcmNrZDN5NC5pbWoMAAAAeGxhbXhwZ3YuMWp0DAAAADJlMGszMWJwLm4xdAwAAAB1MW1sazF3 + NC52bjIMAAAAa3Y1YWhldmoudjBuDAAAAGMwdDVyMm9jLnI1cAwAAAB4d20wdGt2bS5xbHkMAAAA + dWpqcW9pM3IuamoyDAAAAG5sdHl0amd4LjN3YQwAAABoZmF4Mnhydi5yc3YMAAAAdmdyYnlxdXYu + cXQ0DAAAADFqc3d4YWh3Lnk1awwAAAAza3Ftb3d3di5ia24MAAAAZDFocWk1dmMuY20yDAAAADFx + MGRseGNpLmhjcgwAAABkemJsazRyai52ZHYMAAAAZ3loeDBwNXQuZGlzDAAAAGNsaWY1b3h2LnQw + bgwAAABwYm52dzJ2Yy5oMDUMAAAAaWUxajNldXoudmMyDAAAAGNqcnNjaWp3LmJzcAwAAAAxcGxt + bjN3ai5kZzIMAAAAd3BxeW15cWMuZXBvDAAAADNteGpyYTBhLjVudAwAAABhcGxhZTVocS5ibG0M + AAAAc3VjajQwcG8uMzRjDAAAAHpiY2twcDQzLjV1agwAAABhbG5sYjRlNS5ibnkMAAAAYWl3amdz + cWUuZW1mDAAAAGswbzFsbTUwLmNxYwwAAAA0cm1tbDVlYi5xZXAMAAAAYXBpbWdvdGYueXE0DAAA + AGF6b3Jwd2QwLmR3NQwAAAB5M2x0ZGkzYi5xZXMMAAAANHhvbHRmcDAuZDV0DAAAAGhocDI1d2Fp + LnFxMAwAAAB4Y21obGJ6NS5paXIMAAAAbnpqd3p6MGYudmprDAAAAHhyMTFmNHVuLjJidQwAAAB3 + ZGhqeHBuei5neG0MAAAAMnh5bGlsM2wuazF4DAAAAHZzMXZqd2cxLmdqMgwAAABrMHRzbjRmaC5v + a2wMAAAAZDFqb2N6MmQuaHljDAAAAHF2MmpucTVzLmx5ZAwAAABxZHpwNWRyby4xcXcMAAAAa2Zh + YmkzdHYuaXRmDAAAAHB5NG9xeWRiLjJ6MgwAAAAyNGV0dGMwdS53MGgMAAAAZGZkNDN6dHcubWly + DAAAAGF6Zno1eWk0Lm8zagwAAAAzdDV1d2Ruby5tdHoMAAAAb3lsZjF4aHguZ2RqDAAAADR5bnAw + dmFuLnpidQwAAAA1enF4bXZqcC4yNTUMAAAANXFnc3F0Y2QuMmpkDAAAADRuMm5kMGlvLm53ZAwA + AAAxMm1qNWlrdy4yY3MMAAAAY3ZvZnd1dmwucXhnDAAAADBobHU1ZnJ1LmRjcwwAAAB4NGpoNXBk + ci51bzUMAAAAcWRxNHdib24ucWFyDAAAAGhvMHBhbHF4LnNocgwAAABhMmJ0bWJ5YS5xZ2UMAAAA + bGk1b3NwamouMGxsDAAAAHpldGgyMTFkLjBoYwwAAABsY2Y0NXkybi52bjQMAAAAZXpvemI0M2su + YTR6DAAAAHR1ZHVoanlyLmdnbwwAAABuZHBqaXJneC5rbHUMAAAAMnBsbXVrdHIuYnB4DAAAAGhm + eGxnb3RjLmcxYwwAAAB2cGtiMTF5Zy5pMHEMAAAAcW4ybmpvMTMuZ21sDAAAAHJpY2o0eGs1LnBq + bQwAAABqZ2RuMmN5Zi4zYW4MAAAAZDB3aGk0djEuY2wwDAAAAHAxbGdncnVzLnB5bAwAAABqb3R3 + cW95ei5jZjUMAAAAM3p1cnZ3Y2oueWZnDAAAAGkxcGFkdnVuLm96bgwAAABhdGhucnJ6di5pdG8M + AAAAc2Nmc21zZzQuc2lsDAAAAGdxZGp0MXNtLnZ4bAwAAAAzMG1iaDNraS5rYm8MAAAAZzRoZnNo + YWwuY2JpDAAAAHZlbmptanFtLnRmegwAAABhNTVpdnQ0My5zcWoMAAAAbGY1cG14YXguYWJ6DAAA + AGdtb3cwcmI0Lm13egwAAAByM3Nlemh6ai5xZzIMAAAAMGN2NHh6dzUuaXU1DAAAAHlzMjMzZm52 + LmNscAwAAABzaDJuZ2Fvdi5lY3QMAAAAbXFudG4ybXEuend2DAAAAG8ydHFzM2NuLjBxcgwAAABy + cnF5ZWt6di5pcnQMAAAAcDVxMXkzdmQucDV5DAAAAGUzYzVtY29qLmExcAwAAABtNXNxd2Nkai5v + bHkMAAAAeW1uaG40bGguZ2lpDAAAAGZ0ZmJrbXlyLmoxMgwAAABoc3ozcWdoNC53MTMMAAAAZWN0 + Zm9paHMuenV1DAAAADVsbHl5b2dhLmp0cgwAAAB2cmd5Mnl0eC5kMzMMAAAANXA1YW1ja2wuam1s + DAAAAGdrZXpkZmNzLjAwdQwAAAB0MzF2eHViaS55cmIMAAAAZzJ1MzJrenQudGllDAAAAGEzdG9n + ZnBjLjJ4MAwAAABrYzM1cDF2bC4wMXYMAAAAaml0MW9zNXcuanVjDAAAAGVia3h2bXExLjJ0aQwA + AABqYnd6cXVvbC54cDAMAAAAaHJrM2JwaHYuaW5qDAAAAHkweWNjbTQxLnQxbAwAAAB3aW55a2Ft + Zy5rMjMMAAAAaGtpamsxNTMuZTRwDAAAAGd4ZHprY3phLm1zbgwAAAAzaWtwa2tteC5xZjIMAAAA + YnRoc2dnNXQubnl4DAAAAG50M21pdGJ0LmowNQwAAABwamdpNTBuMC41cWYMAAAAM25uZGNobWcu + eXZrDAAAADRhaXdwMWVhLjI1dAwAAABobXhjMmxqcC5ja3cMAAAAd2lveTF5bmIuZ3gxDAAAAGdj + dDNqbzEzLjJwMwwAAAB0cTB1MnZwbS4wdDMMAAAAb21ncW53dzEueTUxDAAAADIzcmVlbjI0Lngz + MgwAAAB6amVheWVzZy56dWsMAAAAZ2trd2x4MGYubnNvDAAAAHpzdWl2em1jLnRmMwwAAABvMmt4 + bXBicS50bXEMAAAAdHBhbzNsMmgucG9zDAAAADBmbXozdHNxLndzcQwAAAA0dDIxaDB0Yi56dDIM + AAAAZXp1anB2ZXkuaWs1DAAAAHNoY2RzeW9nLmRlMwwAAABpdmt3ZWxteC5kaHoMAAAAc2JvNHRj + eXcuNHV3DAAAAHJzbnpkbWExLmFlcwwAAABjYXd3YW5pbi5nYncMAAAAajJvNXdkcncuZ3VrDAAA + AGF5MHVodG9mLnN5ZQwAAAAwYnQ0d2l6bi4yaWwMAAAAeHFtamtvNTUueGZwDAAAADVvdnlydHpt + LmQxawwAAABsY3VoaDR3cC5ldzMMAAAAYWJ6cGhhMTEuM2tkDAAAAHZ2MWVkcnI0Lm1rcAwAAAB1 + aXEwajFrei5yNXcMAAAAeHFydWd2NG8uYWpkDAAAAHo0a3hibjVmLmJjcAwAAAB5ZGVzcGpjZy5p + ajUMAAAAb25yMHJvZGsubGN6DAAAAGoxd2Z3eGVhLnMyNAwAAAB0cDRtNXR0dC53bXgMAAAAcGpk + Y3Bzd3MuYWoyDAAAAGtrcXgza25qLmh2ZgwAAABwdHJubm5jeC41ZW8MAAAAc2I1MTJ5YmouM3Jj + DAAAAHExenBoamN2LmNpaQwAAABwdGNka2ZxYy55M2MMAAAAZGl5bmJjc2gueHR1DAAAAG8yYTFi + ZjVoLmJlMAwAAABwMDBhc2psci5rengMAAAAM3hwYnRmYXMub2R5DAAAAHNwZmZ3bHhwLjRtcQwA + AABjZGMxd25iay5sbWgMAAAAYjBvbm5ueTQueHkxDAAAAGJ0cXdrNWpmLnhjYgwAAABncTR4c3dx + dC54ZjIMAAAAeHNheHVzbmsua2pzDAAAAG9pYzE0azI1LnducwwAAABsdnpvdzRpMy5jNHYMAAAA + ankzbWtueGUuajJ0DAAAAGxnNXI1ZnFnLmJwNAwAAAAxZWFqZ2JsaS5tcGQMAAAAbzBydHh1Ymcu + MWdnDAAAAG1panliYXlrLjRtNAwAAAAxNW9wZjIydC56aW0MAAAAMGJlaDRta2QueWVrDAAAAHVj + c2pka3FxLmJpbAwAAABwbjRndzJwZC5nZXMMAAAAem92ajRqYjUuMXVhDAAAAGMyMjN6Y3JsLmlj + cgwAAABiamp0NWRhNC5heDMMAAAAMnl6a3Fvc3kuZ3Z5DAAAAGJrNGVwa2hrLnVhdQwAAABzbG40 + cmZxYS5jMnAMAAAAdnB4aXh1dnEuMmR0DAAAAGtpdDJndzFhLmMzdAwAAAB3ZWowcGhmbi4xa2sM + AAAAdHh1aGhxcGUuNDEwDAAAAHhzeHR3NGgyLmZjdwwAAAAzZm4ycmR0NC5qZmMMAAAAYmdpMnN0 + YTEuams1DAAAAGlxbmRvamJqLnA1YgwAAAB1cG4zYnh5bS53NTAMAAAAbmdkdDBybnIueGtzDAAA + AGN2M25tMjJlLmN3MQwAAABqZmZqeWE0bC41aWoMAAAAcmJhbXB0NGkub3JrDAAAAHdveTFvZ3N0 + LmIyMAwAAABicHcyNHN6dy50am0MAAAAd3pmams0bDIuc2l0DAAAAHYxcXRtZzFlLnV0cwwAAABy + ajJjcWRycC5taDQMAAAAMGU0dWRxd3cucG9qDAAAAG5lazV6c25yLjB0MAwAAAA1am9zZG5oZi5n + dmYMAAAAbXd6aXA0MWkuaTQ1DAAAAGlqZmsxc2l0LjR3eQwAAAAxbXZ1eDFzcS55cHEMAAAAZnpi + Z2JocDUueW1xDAAAAHVpMTFkenFuLnR0bAwAAABqMTBiMDNsaS54NGMMAAAAMXJ4MHFuaXQueW96 + DAAAADJzc2puMWF2LnptbAwAAAA0bWMxMzR4dy5yNGcMAAAAaXRlaTVxa3oudXZiDAAAAHIxMWlk + ZW5sLjBycwwAAABzaWoxMDU1eC50eGsMAAAAamIxMTJkYnQuY3Z2DAAAAGIwd2tncGFuLm5xawwA + AAAzNXBlamIzZC5mZDUMAAAAMm5oeHB4MmQudDNlDAAAADFkbnhrbzRxLmRhdgwAAABhdzB5cWZw + by4xbTIMAAAAb2U1MnN0cXguMnJsDAAAAHBubGhjd2t6Lmt4MwwAAAB4bGdvNHgxdy5odXUMAAAA + bzRrNHJvNW0uMmdiDAAAAGF1azJ3dHhnLmVmMAwAAAB3ZzBkYWwzZy50bXIMAAAAa2p4MGVyb2Eu + cGYwDAAAADJnNHlwdHVlLjMzegwAAABoMjNpeXJlZS5qaWoMAAAAaGR0dzNsZWouaHdyDAAAAG5z + Y3JjdXkyLjFkbgwAAABrY2ZudjJzcS5qMGUMAAAAMjJxMHB3MmwuNWZsDAAAAHhoZWd5d3Z6Lncx + YwwAAAByMnhzaTVtaC5wbzEMAAAAcHp2dTV5bXYudXh3DAAAADVxZGRrYmJiLnFnbgwAAAAzZnM0 + ZDBnMS5qeHcMAAAAZW9meW9ueDUudHpoDAAAAHd2djRwcW0xLmV4dAwAAABweXZudXJ0ZC4zZGMM + AAAAaXhlNGF0czQudHEzDAAAADFycjMxNGcyLmQyeQwAAAA1YmRzeTR1cy4yMmQMAAAAamxiMGJ0 + enIubGt3DAAAADR1MGhiYWQzLnhyNQwAAAB2dmdrbDJjby4yeXQMAAAAa2c1anNqNXIubG96DAAA + AGkyaDNoZ3NhLnhkMwwAAABudnVkMTNicC5iNTQMAAAAYnAza21yd3AuNHUzDAAAAHd3MGFzc3l4 + Lmp6MQwAAABvaGJ1dXNwdS5ha3cMAAAAcmNpNHpxemQuNHNmDAAAAGZ1b2pmcTQwLmZ5dAwAAABt + YXBiazJpdS5jNHEMAAAAanUxdm8wbG8ubHF5DAAAAG1hMHNxZXRqLnF4cgwAAABxbnd1dGx6YS5n + eXkMAAAAamtybnJkdTMucW5vDAAAAGF2NHNsZ3cyLm5qNQwAAAB4a2xpamN2ai4zcjEMAAAAc3cx + YnZyMHIucWN3DAAAAHZydnI0amFwLnJkMwwAAAAzM2pqYXBhcS5xbGMMAAAAczFwZ3psaHgueXRw + DAAAAHBseDN3aWh0Lnp5bwwAAABwY2llMGp5Zi4ydGEMAAAAd3NocmV0dGYubzAyDAAAAHNyZXZ3 + eGN4LmY0dwwAAAAyZjNleW4yeC5nc2MMAAAAZXF3MGFsZnUud2JrDAAAADBpdDFtZnhzLmpxMAwA + AABpbHl4dXR4ei5tNXoMAAAANHJobG9pcjAuaTAzDAAAADJ2b2NmZzNtLnhycwwAAABkd295eWll + aC5wZWMMAAAANWIycGk0NWEuZGk1DAAAAHlkbWRrMWJwLmtlaQwAAABqaWRjNW5paC41enEMAAAA + MDJnYjJ6aXQuM3VtDAAAAHE1ZmFjM2p6LnczaQwAAABnZmswc2JjMy5wYWsMAAAAd3Nnd3B0d2Iu + bG8xDAAAAGRtd3FycXpvLmthdQwAAAB5ZWVrbGp3YS5oZWwMAAAAdHpoNHN2dTIuaHp6DAAAAHBj + bXhrMWZuLjRseQwAAABjMWt1M3p2bS5hMXAMAAAAa2owMDExNWUudXZnDAAAAGJuNHN5cWdrLjBj + MgwAAAAyb21sNWJ2NS4zdGsMAAAAdzB5eHBjd3cubWwwDAAAAGQxZmNqYmsxLnFseAwAAAAzcmhv + M3Rkdy51MnoMAAAAb2FrdGoyZGMuZjVuDAAAAHoyaTF4MTIxLmY0eQwAAABra2lldXZ0NC5zY3gM + AAAAeHJweXVia3kub2NwDAAAADVieXR0Z29oLmRtMgwAAABkYXYzYmpvdi5waTIMAAAAb3NoaWh4 + ZG8ueTFwDAAAAG0wYnJramU0LngwagwAAAB4ZHU1ZXg0cS5memUMAAAAeGVnNDBib2QudWp3DAAA + AHBnMXYzczJiLjN0egwAAABuc2FqdWY0ci52dGcMAAAAY3FrdWtzbHIuMjJwDAAAAGZ2dmh3aWs0 + LjF0NAwAAABkanRudmJwdC5seHQMAAAAa3Nkdm1wMzEuenNzDAAAAGF3cHczZGpiLjBnZAwAAABw + b21kYzF0cS52amgMAAAAZHJqZm9pbnUuejQzDAAAAGYyc2NpaHI0LjJubQwAAABweWR1bGNpYi56 + YzQMAAAAMDF3d3llNGcucGZzDAAAAGNxd2ZnaG11LnYydwwAAAB5anphNGJrbC5ocWcMAAAAbG5q + MmpyNW0udGJtDAAAAHl2MG9tcWl6LngxdAwAAABzYXNueWEyZC40d28MAAAAem5iejRoYmQubHoz + DAAAAHZ6MzFuYXNzLjM1cgwAAAAxc2I0bnlsZy5yejMMAAAAYTQzemVkaW4uMXYyDAAAAGV5YTUw + cnZmLmg1YQwAAABkMXV4YnFkMy53bjQMAAAAMHRsNTU0bWYuZnMxDAAAAHlmendwNHlxLnp5bAwA + AAAwYXNiZHJuci5yYXcMAAAAbjNqeXZrdnAuZ3doDAAAAHJja3A1c2ljLm1mawwAAABrZWVmcG1n + Yy50dGcMAAAAcXAwZXlrdDMucTRxDAAAAHowc3UwZ3c0LmxwaAwAAABkNWZ4cXpldS5ua2kMAAAA + bTVraGpscHcuZzMxDAAAAHRjMGtqeXF1LnV5ZQwAAABhaG5ncmlvdS56bWUMAAAAaGVxa2R1bHUu + dHE0DAAAAHlwZHZ3MXRtLnN0dQwAAAB2ZHc0NG4yMC5lcHkMAAAAbGN6aTQ1MnAuaWEyDAAAAGEw + cmY1azRwLnQwcwwAAABhcWg0YWc0bC5uZ2MMAAAAZWNwdWE1cWkubWd0DAAAADV3b25lcTUyLnJn + dwwAAAB3NW9rNWp2ZS5xbHcMAAAAMnpjcWJrZmEubGVvDAAAAGR1eXpvNXVlLjNuYwwAAABqNG9n + MnlzdS5sd2kMAAAAZGttcWp6ZTMuYjQyDAAAAGVmZ2FvcmRxLnhyeQwAAAA0bzNhY3B0ZC41c3EM + AAAAa2J5cHJpMm8ubGJnDAAAAGtxZ253ZXJ4LnB3dwwAAAB6dXRnenA1bi52enUMAAAAZHZycHZ5 + M3EuejJzDAAAAHNidjFqcGh3LmdyYwwAAAB6ZDFoaDFsdy5wZGwMAAAAYW1veWtvZGkuNW9nDAAA + AG1uMWkzYjMzLmF5YQwAAAB2cHllbGFvci52M3IMAAAAeWpibmgwcGouMzF2DAAAADMwcndocHBs + Lmt1NQwAAABrdWJwcWxvYi53MXkMAAAAazNsZm9pbWEudGtmDAAAADNleGlsbXB2Lmp6aQwAAABs + YWF1bW1nby51em0MAAAAMHIwcTV0bHkud2ZwDAAAADN4YTBxZ2x5LmljcgwAAAA1NHBhMnBtdy5y + amkMAAAAYW9nZWs1dzEudzMzDAAAADNvZ2t3cWVvLmhpaQwAAABpZmxlaTFuMS5idGsMAAAAYmxk + d2R0b3Uudmk0DAAAAGFiMXNhdGo0Lm1xdQwAAABkd2ViZGwwbC5tcjIMAAAAYTRxZG94ZWsuajMx + DAAAAGszMHA1c2NuLnRsMwwAAAB1MHoxMHloby5pbXcMAAAAY3lrampkMWMuNGd5DAAAADVqM2wx + MHEwLnlmcgwAAABhdXF6cmp1aC5ld2QMAAAAemdubGx6bnUuc3FvDAAAAGI1ZjNmcWRpLjB5NQwA + AABzeWpobG9pby41YnMMAAAAcDVucm4weHkuMmkwDAAAAHVkeGxjdmdtLmpnagwAAAAzZmMwZXdi + bS5lYXUMAAAAejFkMHVvdDAudnNqDAAAADIzeTNzZnFjLmZnZAwAAABxMnRmYjB2ay5uMmQMAAAA + a2xieXcwczUuZ2ozDAAAADN0bWhjaHExLjFxdQwAAABjZXU1M2o1dy5rcXYMAAAAbWRjcGVld2Iu + NXhxDAAAAHl6MmFpd3k1Lm9scAwAAABidHZycTFiZy5jeXIMAAAAeXlhbGJ1Y3MuYW5nDAAAAHAz + eHRvcDFpLnFlZwwAAAB3ZXdrM2dmZC5uaW0MAAAAZm1qb2d4b2cuNTU0DAAAAGVydTJsbmowLnN1 + dAwAAAB6bG5xa3hnYS53MHIMAAAAZXgxeDB1MXUuYnpuDAAAAHZmeGJidWFkLm5tNQwAAABidmo1 + eWxwZC53ZnYMAAAAZW5rY3FzNTUudGx0DAAAAHdsZzBxcWh2LnNyZwwAAABvZWVrcjJ0eC51aXkM + AAAAdmh0aTB3cXAudWYxDAAAADV0cXh0enYzLnk0cgwAAAB4ZXdlbGRrdi56YXEMAAAAamJ4YzB3 + dWkuMWlkDAAAAG9rdXB6MnN2LmhmaAwAAAB1MWJ5eDFlbi5taXIMAAAAaGhwejQyeHQuZ3F4DAAA + ADBxbDMzZXk0LmMwagwAAAA1bTVsbjVsbi4wdTIMAAAAcnN0a2JxdWwudWQyDAAAAG94MDQ1azFv + LmdtbwwAAAB0dWRrcW0wdS50dmwMAAAAY2ZjMWlvam8uNGluDAAAAGozcGM1c20wLm1sYwwAAABp + c2Q0MGpzdC50ZmcMAAAAazM0ZHdjd2IuejNtDAAAAHZleDV1c2RvLm1nYQwAAAB5ZWpnb2d4by55 + bnAMAAAAdjRvbjB1bGwucHlmDAAAAHB3MmUwbHpzLjVnawwAAAB2enEzMW94Yi50djMMAAAAeHFz + MGthZ3QueTV4DAAAAGhyYmlrNGllLnNndgwAAABjZWtsNDBzaS5ycnkMAAAAMDV0Y3h0MmwucXo1 + DAAAAHF4bHZnczFiLnVjbAwAAABnMndsNDBrMS5qeTIMAAAAdWExcnIxZGwudWVlDAAAAHFzdWdu + eXZmLnhycQwAAAB6bXoxd3V0dC40bzAMAAAAYTJuajNxZ3kuajR6DAAAADUxeW01YmhxLmVybAwA + AABpMXJsMnBlYi5odmoMAAAAcWJyanptcnUubWZqDAAAAHljNWdrZ3lsLm1wdAwAAABkZDV3dGh5 + aS5xeGcMAAAAa3dlZHV2cG4uZnRhDAAAAGFqZDNkdjBoLmtqYwwAAABocGdudG5qaC56dHIMAAAA + eDRmYWF5b24uemd6DAAAAGRleDR4YjVsLnJtbQwAAAA1NWZvcXJybC4ybXUMAAAAd2lrdXB4b2ou + c2V1DAAAAHVkYWxnenR0LmMzbwwAAAA0czJ6aG15cC4waTEMAAAAMHB4MWRpY2wucWd3DAAAAHVx + YTF4bGRxLnQydgwAAAB1MXF1aHRzdi5xdXUMAAAAMnMycmJmdm8uanZpDAAAAGQ0bDQwbGJxLjUw + ZgwAAAB4YTNsajR3Yi5udHYMAAAAam9jZnc1dmQubG5tDAAAAHowYmNsa2R1LmNwawwAAAB3MGpv + Z3BzMS5hNXUMAAAAMDM0bDBvaDEuNWh2DAAAADNzY3Vzd2JzLnl3aQwAAABidXp6MmpuMi52MzUM + AAAAa2V0c2IyeHQuaXgzDAAAAG01a3RycmtsLmJmNQwAAABkeXVqMXRydC5rdXgMAAAAYzExcG9l + MDMuaHJjDAAAAGJvd2lyZDQzLmI0YgwAAAB6M2E1eDR6dS41em8MAAAANWw1MWswdGsueGRsDAAA + AGZzNXgyYWxuLmpkZwwAAABpcno1aHAxcC54dzEMAAAANDRobGZsdjQub2lpDAAAAHVzMzMyMDJy + Lm1tbQwAAAAwZGV2aGIwMC5lbm8MAAAAeWdva2FscHQubXpuDAAAAGx5ZmNscmh3LnJ0NAwAAABk + a3hrY2l1ai4zZnAMAAAAemtkbHNwcjEuaHQyDAAAAGE0aDNvMmFyLnBzNQwAAABxd2YwM2lxZC5o + ZmUMAAAAanl0cHZ2YWEudWYwDAAAAGFvdno1ZjRhLmlhMAwAAABjdjFlMnhvdS4xbngMAAAAbGFs + bzVncmoueWV6DAAAAHgzanRjbzRjLjJsaAwAAABycDR0c3ZibS5oa2kMAAAAeTB2MjM1eG4uMG5m + DAAAAG56eDR2MXBpLmNlMAwAAABocWFleXd2by5zazAMAAAAcXMwYmRudjEuNDVjDAAAAGhpM3p5 + cjFsLmlidgwAAAB6YzJoM28xdy5iMnUMAAAAZ2F5eXo1dDUuNWNlDAAAAGZhZXEwdTNrLmZndQwA + AABtcmZwZ3FzdS5ldm4MAAAAY2hlbTRsb3kuZnMyDAAAAGlyc2xnb2hkLjVibgwAAAB2YWR0YXNs + aC5oeGIMAAAAZnhpMmwyeXAuNGdhDAAAAGd1aHFibjExLnVyagwAAABmcTJ5bmZiMS5tb3IMAAAA + Zm50aWR4dHEudDJjDAAAAHNxenZhcnQ1LnlmZgwAAABnbDEyZ2ZxMy5nZWYMAAAAcWNtYmpha2cu + cGc0DAAAAG4wanFyaDNjLnBtdQwAAABpNGdmdmN0Zy5sa3gMAAAAeW1vNXlsengudmt3DAAAAHZ1 + bWFocGV0LmVqMAwAAABza254ZXVhby41eG0MAAAAdHF5bmFoaGcudW8zDAAAAG4zMm00aGVkLnRt + cgwAAAAwcHVpbjRwdy54NHAMAAAAbGgxZTBjM3QuamNlDAAAADBjeXBuZGVwLjNrdwwAAABrdWg0 + NGp3aC53c3IMAAAAb3UzNDFwd2sud2lxDAAAAHBobWZtZ3dkLmlicAwAAABhc2szdXNzcy56YjUM + AAAAaHgwYzFnZmIudXQzDAAAAGFxaWloMGxlLnYyawwAAABleHVlaWVmZi5sc3gMAAAAa2pmMG9u + bmIueTNiDAAAADJ5dG1vZHpwLnMyZQwAAAB3NHczZjUyai5vaGEMAAAAajJuamJtZHEuMTRhDAAA + AG1xenExcGptLnM1NAwAAAA1ZjBvb2h4My4xamsMAAAAaWJxcjUwanAudmVnDAAAADFsM3phZ3F4 + Lm80cQwAAABueGN4MzBpbS4wdDAMAAAAb3ZkYmVnZGcuMWRmDAAAADR3MTJncHAzLmRycwwAAABx + MnlkYjJtci4xNGQMAAAANWZyZHJqNG4udmduDAAAAGtua3B5MGtvLjFucAwAAAA0aW54a3YzZC54 + eWgMAAAAYm1ucnBscWcuMHdxDAAAAHh5Z2U0ZDM0LjQ1eQwAAAAzbGN1aGZpcS4yYWYMAAAAeGtp + NXYxMGguZHkzDAAAADA0bWJzeWJzLnAzdQwAAAAzZXlpYjNqMi5sZ2sMAAAAeHlxZXE1ejMubTRh + DAAAAGtqcG9ud3hqLnNjYwwAAAA1a3EyYm0wby52azEMAAAAcnNjc21uNWkudzFuDAAAAHptNWtp + Y3JyLjV4ZgwAAAB3dGVvdHcxci54dW0MAAAAcXZkMDIzemguYmNwDAAAAHlranlrY3F4LnJqMAwA + AABqZHQxYnV0Zy41d2UMAAAAbW53ZjJnbXUuM3hxDAAAAG1nb2VrdTNhLnl3ZAwAAAA0bnAwdGdo + NS5ybWoMAAAANHF2c3JndnIudnBqDAAAAHhjZGN6cnl4LmZhcgwAAAA0azEwdnV6by56d3cMAAAA + b3NhZHYyeWouc2RnDAAAAGx4c2VsYXF2LjJjYwwAAAB2dGkyMDE0di4zY3YMAAAAaGNhMGx3cjMu + eGp0DAAAAGJqbnIxMHN6LnM1eQwAAABzcjVvZ25jNS5ocHMMAAAAYTJqaHRxeWIuczVjDAAAAGtm + ZG92aXptLmljdwwAAABvZDMzNDVvMS41MXoMAAAAY2VzM24zdjIudm53DAAAAHZycDBncG1mLnky + YQwAAAB2MDFmYWJsYi41djUMAAAAanIwZnRoYWYuNWJ1DAAAAG4xdnYxdHN1LjFpbAwAAABnZjFi + aDV6by5iNWkMAAAAY25sNHhpM3Uuc2NkDAAAAHMxaGpub2t0Lmx3agwAAABqbmE1em0wYy5hb3gM + AAAAY2phenp1bXguNXE0DAAAADVvaW81bWN4LnoxMQwAAABrbm41cW1ueS5kbDAMAAAAbTNkd3Jx + MmEuMnJ2DAAAAGJ3YmlmM20zLm94YgwAAAB0aXdpb3VsaS4yMmMMAAAAMXU1cjFuYXoueWhjDAAA + AG52MGgxNHRzLnBpeQwAAAB3cnNzY2htcy5obWEMAAAANXF4MG81MmIuZnlwDAAAAGJuNHJ6aXNy + LjV5cwwAAAB1cmZvMmJxYi51Y3cMAAAAc3ZlZ3Rpb2UuaWNzDAAAAGZ6aWpmcGpsLmMwagwAAABn + M3lwdTJobS5qanQMAAAAd2llaG1mejIuMTJkDAAAAGQ1eXViM3NuLmRoagwAAAAyZnZ3eGlsdi5p + d2gMAAAAdTV4NWtwMXguenJlDAAAADEyc3Q0MDVnLmJ4dQwAAABucWZtMWJvZS51ZG4MAAAAdGxh + czJ6Z2QuZWswDAAAAG0xdmhyMWl6LnhucgwAAAB6cHpuNHczeC5uM20MAAAAYnNqbDBudmkuaW5o + DAAAADJ0amlwd2J6LjR5NQwAAABnZ3BrZGxvdy5vd2QMAAAAZHpoM2NmYXguNWZmDAAAAGlnM2x0 + ZWdkLjVpNQwAAAA1eTBnZWszdS5pMm4MAAAAa2JiZGEza3MubWl0DAAAAG1mbzF0amV4LjR5bAwA + AABlNXFpNXppYS5sMXgMAAAAeTRjNHZsM3EuMnF6DAAAAGRhZHhtMjN4Lmx4cQwAAAB6amlqZGV2 + cS55bmEMAAAAM290ZXByancubW93DAAAAGQ1NXA0b3BjLng1aAwAAAB4bGE0NGYxaS5jbmIMAAAA + NTFiNWZndXkuaDB4DAAAAGdsb2RnM2lmLmlyMwwAAAAwZGR2anNhZS5vdWYMAAAAZG5qd25lcnYu + ZGZ4DAAAADRoYXA1c3ZsLmowMQwAAAB2a3JsbHFndS5zemcMAAAAMTEyYnFwcWYuaWMzDAAAAGtw + NHhyeWdmLm9tawwAAAB1dWx6bmFwdS4yaGQMAAAAb2V6cmgwc2kuajJ4DAAAAHNudnF3aGkxLml3 + aAwAAAB6aWZsa24zcC5sMGoMAAAANGJ5ZnhkMDUucGJxDAAAAGRsc2Fpb2FzLmhzMwwAAAAweGZh + dDNxei5vYWkVABWO+gEVjvoBLBXQDxUAFQYVBhwYDHp6cTBrZnk0LnZibhgMMDF3d3llNGcucGZz + FgAW0A8YDHp6cTBrZnk0LnZibhgMMDF3d3llNGcucGZzAAAAAwAAANAPAQwAAABtZGlmanQ1NS5l + YTMMAAAANWRtdnFldmcuamswDAAAAHNmdGdtZ3N4LmIxZAwAAAB6cm9xdnM1dC5samkMAAAAYW8z + amF0bmMuMXZoDAAAAHUzYmZ1dmRsLjF3cgwAAABqcWN3M2VyMy5sdDIMAAAAc2gxc3doZXQuYncz + DAAAAGkwc3EzMDVvLmg1dQwAAAB1NTNjZWxhMC5zZ2IMAAAAemZybTVobHEud3J1DAAAAGN6Y2Nr + a3QyLnJpMAwAAABxMG40NTJlNC51bnkMAAAAanVvenVtYWEudmZ2DAAAADFtdGZvMTNtLnhlaQwA + AABjd3RhZWQyci5xZHcMAAAAM215czB5a2YuYWdqDAAAAHZlYXVpbTNtLjNhMwwAAAB1NHh1cWZx + ci5ubXEMAAAAbHd1aG5kbTAud2pmDAAAAGtqdXkycm50LnVqdAwAAABxeGNpd3JpMS5seDEMAAAA + bHBlYnRqNXcuZmMwDAAAAHp0aWoxcWNiLml5MwwAAAAzbXdyZXpwMi5xaTAMAAAAYXoyamF3M2Eu + Y2RmDAAAAHBjanpvdzF1Lm0wMAwAAAAzZHlxdmg0MS5wYWMMAAAAMGFqY3lkcHMuYTRkDAAAAGI1 + MnJtY2htLnNoZQwAAABwczBzZGZzei5lcmMMAAAAZjUxdDNkaGIuanZjDAAAADV6cmhzYnpqLjF4 + YgwAAABqMmxtZnpzMi5xZmIMAAAAcjBlcngxaXQuaXRyDAAAAGpiMGRzdTAxLnBlbwwAAAAzd2ow + ZGsybi5hczIMAAAAem5iemhnaXAuY2xxDAAAAG5xYmJwcHJ1LmZncQwAAABncDF4emYxZy4zeGQM + AAAAcm95ZG9udWsuYjJqDAAAAGVlZ2czY3FzLml0eAwAAABtNHYxd29sdC40bGgMAAAAcHV4MHp5 + ZGMubHZsDAAAAGRiZGZtc3IyLmlrNAwAAAB1cXQ1c2EzaS5hbmsMAAAANWpjaWpoMWcua2dtDAAA + AHIwbm50eTRwLnFlMAwAAAA0eGMxcGMzai5vemYMAAAAZDN4dzNoZ2EuYWZkDAAAAHZlMHVtZnl5 + Lms1agwAAABhcHljZ2h1aC5hbHIMAAAAY3l6Z2twaDQuM2ljDAAAAGJjZTJ5dmNxLmhhbQwAAABv + eGxhdGdudy5hdG8MAAAAdGpnb2tzZTIudTRzDAAAAGt1MWw1NDVkLnB3ZgwAAAB1Y2VhYmxjcS5o + dnUMAAAAc2x3dXZjaXkucXlmDAAAAG9seWMwcml2LmhuYgwAAAB3cmN6bXEwbC5yZ3cMAAAAc3F3 + aTVla3UuZnl6DAAAAHdua2VzY25rLm5kbwwAAABoajRzbDVqMS5mdXkMAAAAczR4bmJoMmMudGgw + DAAAADVobHZvZ2l3LndtMQwAAABjcTBuNDVwei5mc3AMAAAAemYydndqaXIuZXVxDAAAADVqeHZk + NTMwLnp2NQwAAABqc2N2b3ljYy5xcWcMAAAAbHNqbnp2ZmIua3J3DAAAADRwYWliaHoxLnYxcAwA + AAB1cmkwMmFjMy5zYnkMAAAAbWc1cXdiMXEudGVqDAAAAG5sYmd5b2k1LmZkZwwAAABrM3ZiMW1v + by5xYWsMAAAAdmN5Z3FzcWUudXZiDAAAAGRobWFheWc1LnNrYQwAAAB0dW9sZ3lobS5seGQMAAAA + cW1mdXJrMWcucmNnDAAAAHMyZmdlMDAzLmNkMQwAAABpM25sY256dy4wNGwMAAAAc2UxNHJmeWwu + cG1zDAAAAHR0eW9kc251LjQ1ZQwAAABtcmQxamJ0Zy5uZjEMAAAAeWNtcG5ldzQueTFnDAAAAHd6 + dmF6cHZqLmFoeAwAAAA1bXVyNGt2ei5mZWoMAAAAM2NoYnN6dmYubXl2DAAAAHBldGsyZzVxLmxn + ZwwAAAA1bTU0Zmdnby5rdjUMAAAAeXptczVvMHMuNTN6DAAAADB4NTRsZHN5LmdxdgwAAABnZWlz + emdhMS53ZnIMAAAAamExY2xhdHcuNWNpDAAAAG9ydHVzdnlwLnp1dwwAAAAyYTJueHNxbS5hdHIM + AAAAeW5sNXR0eWgubTVsDAAAAG5xY2k0bjUxLjM0dAwAAABrMjRraXpsZC50aXQMAAAAcHBwZmNw + MmQuenRxDAAAAGtnbGl5ZXN0LmFmdgwAAAAzbGFlb25nbi5qenoMAAAAaDA1djA1YnQuc253DAAA + AGVrZGp0Y3U1LjNicAwAAAA0dmp3eTJhei5kc3cMAAAAYzR3MjF6ZXAuYWNzDAAAAG1hZmtrdGh1 + LjN5dAwAAABqaDV2ZGx6eC54aGIMAAAAanYzZ2lhMDAuemFxDAAAAGxucjAxemRkLmh0eAwAAABt + bmNkZjRudS5idnQMAAAAY3l1ajNjcjUuYmVhDAAAAGt2cG5kem94Lm1vbQwAAAAyZjB0c2Vuby5t + NWkMAAAAcTJvbGRtbDQuZHlyDAAAAHFqMTBqY3BjLmhrdwwAAABjMXZ3bWtvYi56azUMAAAAdWRt + NGFiMXMuM3FtDAAAAGtxZ2I1ZndsLnV6MwwAAABla21uYjBoZC55c3IMAAAAYWdqYnNrbnIuMmd5 + DAAAAGZwNGRqamxsLm1meQwAAABibzVkZW1oeC5taHcMAAAAcnppZ29ldWkuYnhkDAAAAHhhZmUw + aWlrLnQ1ZQwAAABybXZreHN6ZS5id2EMAAAAaHRxNWZndm8uaGdlDAAAAGczeXBicGprLnY0ZQwA + AABtbXYwb3lieC5rM2cMAAAAZGhqMGIxY3kudm5tDAAAAGJoYm5kZGRjLnp1cgwAAABid2NicDQx + ZC55dG4MAAAAZGhoZ2d0dGkuMWhrDAAAAHFwa3J2MW40LmlvcAwAAABnMGNsdDUxbS5wYnEMAAAA + bnhsbGRhYW8ua2RwDAAAADBucTV0Y3J3LmpldAwAAAAzNDAzbW9tai5nbGgMAAAAcG1kNHp6aGsu + eXJzDAAAAGYxcmMwNGp0LjFrbAwAAAA0dXhmc2loaS5tMHUMAAAAZWx6Z2t4dmoucmplDAAAAGxr + dmY1b3gyLmpqMAwAAABhejIyNG1qci5zZ24MAAAAemYwemFwdW0udnZjDAAAAGNjZnBqMG95LjRp + ZgwAAABtazB4dXZ5MS5pMjEMAAAAMjRmbjJ6eHIudGtqDAAAAG96eWZ1b3JuLjFybgwAAABhdnN3 + dTF2Zy5vYXMMAAAAcmNtaHhvczMucnptDAAAAGhyajVmZ3NnLjM1MQwAAAB0eWlibmV5bC54aHQM + AAAANXIzZHV6b2cuamlnDAAAAHBuMXJ5ZWFnLmV1bAwAAAB6MmFsbXJ6ZS5tdHkMAAAAenpxMGtm + eTQudmJuDAAAAHJ0cTBkZG9nLjV1ZwwAAAB3ZXRlc2hteS5kYW0MAAAAZWc0M2tvMG8uamhnDAAA + AHNxaGdhaW1wLnQ0YgwAAAB6cDRtdmh1Yy5xbW0MAAAAM2dnd3F3aHYuZ3MzDAAAAHd1emNxb3Z4 + LmZqMgwAAAAxbDFtNDFiai5nZHcMAAAAdnFib3FrcHQuMzJ2DAAAAGU1bTR0MmVxLnhsNAwAAABm + MXhtMTN6eS5langMAAAAMXNlcTVjaG0ub3BoDAAAAHgzYmt3Z3JyLjViYQwAAAA1MXNqeWNncy51 + bWgMAAAAMHNrdmJvanEueTBoDAAAAHo0anJ5YmYwLmVvbAwAAABxaXNmbDRsci5iZXEMAAAAb2xm + Z2RhYnoud3djDAAAAGFnem1oeHV1LmN3aAwAAABiNXB4bTR2dy5yamIMAAAAbTBzb28xanYubG5x + DAAAAHJ4dWJ2dmdwLnhnZgwAAAB0MzJuM3huZS5kZWgMAAAAdWZvMG1sNWsuanphDAAAAGJqZmQ0 + cWNvLjRtZAwAAABkdnJmZW0ycC51bGgMAAAAdGJ6Z2loM3YudHQ1DAAAAGlmeTJlcHVrLnNxNQwA + AABmYWlsMzVieS5ycTMMAAAAbTVlZ24yZmsuYWllDAAAADBsaGlrbHFrLm9iegwAAABsb3h0eHlv + dS4wMWcMAAAAbXYzcm5lZW8ucmljDAAAAHI0cnpyeWkyLnF3NQwAAABxcmJsMDVxei4wNWUMAAAA + YXcycHJqYmEubTNhDAAAAGJoZ3l2aXZqLmNiMwwAAABkbHhlcTVjMC5vcnYMAAAAbjN2MDRyaHAu + YWV4DAAAAGQxcXZ1ZmltLnBidwwAAABveWVyanp2dS5wZm8MAAAAbnVheGtib3YucXB1DAAAAGtk + eWRhcWlyLndjcgwAAAB3YTM0Y3VrMy5iZGcMAAAAZTVuMWl4anoud3JrDAAAADJycmk0MXBqLmV2 + cgwAAABoeHJqNHJzZS54Y20MAAAAdzQxanFwemMueDF4DAAAAGJqbTJhdTNyLnR5eQwAAAB5eTFi + eDNtZS5tbHgMAAAAZ2I1MG11bzUudTNoDAAAAG1pd3Z3anQ0Lmo0aQwAAABxY3JpbWFoby5jbnYM + AAAAdWdlc3R5dzEudXBsDAAAAHNqczJ1NGVwLmdlMwwAAAB6NWZqc2N3Yi41NWIMAAAAaGxmeDFn + cXMucTRqDAAAAG0zbnduMGUyLmhscAwAAAB2cm9iendrMS50cG0MAAAAaGFyYXF2ZGYuZDBkDAAA + AG16YTR0NXNnLnV1dgwAAAAwaGh2cGpkNS55bXAMAAAAcHByanQxbWIuZ3RzDAAAADE0dnJkemEy + LnhtcwwAAAAzbWltdnF1bi5odTAMAAAAa2NsbGdqdGUuY2I0DAAAAHN6eGdsYWlqLjJvdAwAAABu + bWg0bmg1MS4xbjAMAAAAZ2Zyb3ZieGwucWJtDAAAAGUwbnBsbndqLnlzZQwAAABkYWhodXF2Mi4z + b3IMAAAAcHhuMXQzemkuYWNnDAAAAHl0MDBodGtrLnd0dwwAAABwend4NTIzMi5ocWcMAAAAbXJ1 + eWx6dHQua3BiDAAAADBiaWNzeXFvLmJxZAwAAABndnpwbnZ4cC5xbGwMAAAAM3V6bDFmaXUucmYy + DAAAAG9mZGptbnN2LnVodAwAAAAyeWhndHVzei4xa2YMAAAAMXcwYnhkY24ucHgxDAAAADFwbWx3 + Ymt2Lml3MwwAAAB5ampoa3Fsbi5pdWIMAAAAMHh3MW95bG8udHdlDAAAAGtteml4cTR3LnUzcAwA + AAB0djEzd3F2eS55dWIMAAAAb2EyZzNlanQucmlmDAAAAGViZXBnanc1Lm10cQwAAAAyZnkxMzAz + Zy5ueXUMAAAAMGM1dXR1bWYuM3RzDAAAAGZuY3RrY2JnLmMwYwwAAABibmtzZXdzZy53em0MAAAA + eXlpajEwMW8ucGlqDAAAAHA1anlkbHI0Lmh2MgwAAAAzaXBjZGF3dy5hcXIMAAAAMDRtdzV6MnMu + dW0wDAAAAHdjdHBua2ZoLjJ1bQwAAAByenBxc2JzMC41dGEMAAAAdmFoeHF6MGMuMnBtDAAAAHZy + MHNza29yLm4ydwwAAAB4dDUwMHUyYi5yaGsMAAAAY3ZpeTI0ZHguY2t6DAAAAHU0c3dkb2x4LnFq + ZwwAAABqc2V0emMwZS5qaGUMAAAAaGI1NGIxdGkuM3F2DAAAAGVyNXFzcHZyLnUxMAwAAABibzRp + MnNmdi53MnUMAAAAbXpwdnNudWIua2xoDAAAAGtrMG14djBmLnNsbgwAAABjemJlbGVqZy5xaXEM + AAAANXhob2txNTQuY29qDAAAAHVyaWhzbjR5LmVreAwAAAB2dGFtaWl2MC5sd2IMAAAAbHhhc3g1 + eTQuejMyDAAAAG12dnJ2czFuLmRodQwAAAB5ejJxa2h3ZC50ZGUMAAAAeGwyYWd6dHYuMXNmDAAA + AHZnNGNybm0yLjNjYgwAAABrNTVmNWtwcS55cWIMAAAAa2RlbGI0bWkucWNtDAAAADN4NWxldGk0 + LmtkYgwAAABqd3FnYnVtYi5pcnQMAAAAaGVkbHlpNXQud3FsDAAAAGZ0ZXRzM2tvLmhtbAwAAABy + Z2MzdjN5cC4xY3AMAAAAZ3BoMzNqcGwudHoxDAAAADR1eDNzd2l5LjNhMgwAAABuY211d3V1MS41 + ZjAMAAAAaGhrYjBrdzAueWkyDAAAAHZobG1ha3VwLmhzaQwAAAAyd3dkdXFzdy50dzEMAAAAamJm + Z3FxeDUudHoyDAAAAG80dWk0a2RyLnAybQwAAAB4aWd3ZHBxZS4zencMAAAAamIwemtsbDEuMmFo + DAAAADB3eHBpZWlpLmVndAwAAABuNDNudG81NS5ueWYMAAAAeW1ocjFxeDUuMW9yDAAAAGY0bGZ3 + b3hpLm50ZgwAAABuemZyYmJ2eC5weXkMAAAAeWhyNXZvaXouMnVvDAAAADN5NXAyZXp3Lm55YwwA + AABuNXFnYWgxbS5vM28MAAAAcDNzMWUwMWQua2pnDAAAAGVxZDFoa2NhLnkzbgwAAAB2YTN1Y251 + ay4yMXAMAAAAYWVrYTE1Z3EucXFkDAAAAGNwdDNvNGZhLnhzdwwAAABsMXMyZ3Fhay52cWQMAAAA + anJvM2hzcDMuMmYzDAAAAGJzZ2FhdTBvLnBvawwAAABybHgxZGVoaC56eHoMAAAAdmZlNGlibmMu + YjJyDAAAAG5paTFtc3YzLnBzdQwAAAA1cWtkbnR5ci5xa3QMAAAAa2Yxa3Yxb3kuaGsyDAAAAHh1 + bmd3dWlqLnViMwwAAAB2Ymx3MndldC5rcm0MAAAAanFkZ29tNWEudmMxDAAAAHk1amtjbG4zLmxw + NQwAAABqcW1xeWVkdy5naWEMAAAAMW9qYjIwaWEudnRqDAAAAHRmaXZkdjIxLmF4MAwAAABwaWQw + aHpwcy5kdjUMAAAAd2ZnY2RxNGYueG8yDAAAAGNicDA1eG0yLnM1MAwAAABhMjAxYXBodi4wZjQM + AAAAZGwxMnl6bXIuZWJmDAAAAHgwZXZ5dHFyLmEydwwAAABnZm91NHlrMS55NXQMAAAAdzJqZHZs + MmIuZmJ3DAAAADJ4a3c0eHhyLnVpawwAAABneHFsaWdsMi5scHMMAAAAanN5dXl1emguZGhyDAAA + AGRkem5lMGpnLmV2NAwAAAB6d3pkdXBjcy5mMWMMAAAAbHZzYWFsYzEubWxqDAAAAHhheDBhZTVl + LnpjeAwAAAByZmRncm4xZS5yZHYMAAAAc201MnV4bm0uYjMwDAAAADF2cWt5NWZhLm54ZwwAAAB5 + Y3lreGVnYy4zYmwMAAAAajNqMnV5ZGIuZ3JmDAAAAGh6aHozNG1mLnB6NAwAAABhMHJzaWUxci5p + cTUMAAAAMGp1cmoyMWkuNDAzDAAAADAyM3c0YnJ4LjNzMAwAAAA0em95YjRzdy4zbXMMAAAAcGlv + MnM1MHAueGprDAAAAHBpYWpibXpyLmgzcgwAAAA1ZDMxeW5ndS54a3IMAAAAZ2dlMGMwdWEucmsw + DAAAAGpvZHIxbHVjLmk0cAwAAAAxcmNrZDN5NC5pbWoMAAAAeGxhbXhwZ3YuMWp0DAAAADJlMGsz + MWJwLm4xdAwAAAB1MW1sazF3NC52bjIMAAAAa3Y1YWhldmoudjBuDAAAAGMwdDVyMm9jLnI1cAwA + AAB4d20wdGt2bS5xbHkMAAAAdWpqcW9pM3IuamoyDAAAAG5sdHl0amd4LjN3YQwAAABoZmF4Mnhy + di5yc3YMAAAAdmdyYnlxdXYucXQ0DAAAADFqc3d4YWh3Lnk1awwAAAAza3Ftb3d3di5ia24MAAAA + ZDFocWk1dmMuY20yDAAAADFxMGRseGNpLmhjcgwAAABkemJsazRyai52ZHYMAAAAZ3loeDBwNXQu + ZGlzDAAAAGNsaWY1b3h2LnQwbgwAAABwYm52dzJ2Yy5oMDUMAAAAaWUxajNldXoudmMyDAAAAGNq + cnNjaWp3LmJzcAwAAAAxcGxtbjN3ai5kZzIMAAAAd3BxeW15cWMuZXBvDAAAADNteGpyYTBhLjVu + dAwAAABhcGxhZTVocS5ibG0MAAAAc3VjajQwcG8uMzRjDAAAAHpiY2twcDQzLjV1agwAAABhbG5s + YjRlNS5ibnkMAAAAYWl3amdzcWUuZW1mDAAAAGswbzFsbTUwLmNxYwwAAAA0cm1tbDVlYi5xZXAM + AAAAYXBpbWdvdGYueXE0DAAAAGF6b3Jwd2QwLmR3NQwAAAB5M2x0ZGkzYi5xZXMMAAAANHhvbHRm + cDAuZDV0DAAAAGhocDI1d2FpLnFxMAwAAAB4Y21obGJ6NS5paXIMAAAAbnpqd3p6MGYudmprDAAA + AHhyMTFmNHVuLjJidQwAAAB3ZGhqeHBuei5neG0MAAAAMnh5bGlsM2wuazF4DAAAAHZzMXZqd2cx + LmdqMgwAAABrMHRzbjRmaC5va2wMAAAAZDFqb2N6MmQuaHljDAAAAHF2MmpucTVzLmx5ZAwAAABx + ZHpwNWRyby4xcXcMAAAAa2ZhYmkzdHYuaXRmDAAAAHB5NG9xeWRiLjJ6MgwAAAAyNGV0dGMwdS53 + MGgMAAAAZGZkNDN6dHcubWlyDAAAAGF6Zno1eWk0Lm8zagwAAAAzdDV1d2Ruby5tdHoMAAAAb3ls + ZjF4aHguZ2RqDAAAADR5bnAwdmFuLnpidQwAAAA1enF4bXZqcC4yNTUMAAAANXFnc3F0Y2QuMmpk + DAAAADRuMm5kMGlvLm53ZAwAAAAxMm1qNWlrdy4yY3MMAAAAY3ZvZnd1dmwucXhnDAAAADBobHU1 + ZnJ1LmRjcwwAAAB4NGpoNXBkci51bzUMAAAAcWRxNHdib24ucWFyDAAAAGhvMHBhbHF4LnNocgwA + AABhMmJ0bWJ5YS5xZ2UMAAAAbGk1b3NwamouMGxsDAAAAHpldGgyMTFkLjBoYwwAAABsY2Y0NXky + bi52bjQMAAAAZXpvemI0M2suYTR6DAAAAHR1ZHVoanlyLmdnbwwAAABuZHBqaXJneC5rbHUMAAAA + MnBsbXVrdHIuYnB4DAAAAGhmeGxnb3RjLmcxYwwAAAB2cGtiMTF5Zy5pMHEMAAAAcW4ybmpvMTMu + Z21sDAAAAHJpY2o0eGs1LnBqbQwAAABqZ2RuMmN5Zi4zYW4MAAAAZDB3aGk0djEuY2wwDAAAAHAx + bGdncnVzLnB5bAwAAABqb3R3cW95ei5jZjUMAAAAM3p1cnZ3Y2oueWZnDAAAAGkxcGFkdnVuLm96 + bgwAAABhdGhucnJ6di5pdG8MAAAAc2Nmc21zZzQuc2lsDAAAAGdxZGp0MXNtLnZ4bAwAAAAzMG1i + aDNraS5rYm8MAAAAZzRoZnNoYWwuY2JpDAAAAHZlbmptanFtLnRmegwAAABhNTVpdnQ0My5zcWoM + AAAAbGY1cG14YXguYWJ6DAAAAGdtb3cwcmI0Lm13egwAAAByM3Nlemh6ai5xZzIMAAAAMGN2NHh6 + dzUuaXU1DAAAAHlzMjMzZm52LmNscAwAAABzaDJuZ2Fvdi5lY3QMAAAAbXFudG4ybXEuend2DAAA + AG8ydHFzM2NuLjBxcgwAAABycnF5ZWt6di5pcnQMAAAAcDVxMXkzdmQucDV5DAAAAGUzYzVtY29q + LmExcAwAAABtNXNxd2Nkai5vbHkMAAAAeW1uaG40bGguZ2lpDAAAAGZ0ZmJrbXlyLmoxMgwAAABo + c3ozcWdoNC53MTMMAAAAZWN0Zm9paHMuenV1DAAAADVsbHl5b2dhLmp0cgwAAAB2cmd5Mnl0eC5k + MzMMAAAANXA1YW1ja2wuam1sDAAAAGdrZXpkZmNzLjAwdQwAAAB0MzF2eHViaS55cmIMAAAAZzJ1 + MzJrenQudGllDAAAAGEzdG9nZnBjLjJ4MAwAAABrYzM1cDF2bC4wMXYMAAAAaml0MW9zNXcuanVj + DAAAAGVia3h2bXExLjJ0aQwAAABqYnd6cXVvbC54cDAMAAAAaHJrM2JwaHYuaW5qDAAAAHkweWNj + bTQxLnQxbAwAAAB3aW55a2FtZy5rMjMMAAAAaGtpamsxNTMuZTRwDAAAAGd4ZHprY3phLm1zbgwA + AAAzaWtwa2tteC5xZjIMAAAAYnRoc2dnNXQubnl4DAAAAG50M21pdGJ0LmowNQwAAABwamdpNTBu + MC41cWYMAAAAM25uZGNobWcueXZrDAAAADRhaXdwMWVhLjI1dAwAAABobXhjMmxqcC5ja3cMAAAA + d2lveTF5bmIuZ3gxDAAAAGdjdDNqbzEzLjJwMwwAAAB0cTB1MnZwbS4wdDMMAAAAb21ncW53dzEu + eTUxDAAAADIzcmVlbjI0LngzMgwAAAB6amVheWVzZy56dWsMAAAAZ2trd2x4MGYubnNvDAAAAHpz + dWl2em1jLnRmMwwAAABvMmt4bXBicS50bXEMAAAAdHBhbzNsMmgucG9zDAAAADBmbXozdHNxLndz + cQwAAAA0dDIxaDB0Yi56dDIMAAAAZXp1anB2ZXkuaWs1DAAAAHNoY2RzeW9nLmRlMwwAAABpdmt3 + ZWxteC5kaHoMAAAAc2JvNHRjeXcuNHV3DAAAAHJzbnpkbWExLmFlcwwAAABjYXd3YW5pbi5nYncM + AAAAajJvNXdkcncuZ3VrDAAAAGF5MHVodG9mLnN5ZQwAAAAwYnQ0d2l6bi4yaWwMAAAAeHFtamtv + NTUueGZwDAAAADVvdnlydHptLmQxawwAAABsY3VoaDR3cC5ldzMMAAAAYWJ6cGhhMTEuM2tkDAAA + AHZ2MWVkcnI0Lm1rcAwAAAB1aXEwajFrei5yNXcMAAAAeHFydWd2NG8uYWpkDAAAAHo0a3hibjVm + LmJjcAwAAAB5ZGVzcGpjZy5pajUMAAAAb25yMHJvZGsubGN6DAAAAGoxd2Z3eGVhLnMyNAwAAAB0 + cDRtNXR0dC53bXgMAAAAcGpkY3Bzd3MuYWoyDAAAAGtrcXgza25qLmh2ZgwAAABwdHJubm5jeC41 + ZW8MAAAAc2I1MTJ5YmouM3JjDAAAAHExenBoamN2LmNpaQwAAABwdGNka2ZxYy55M2MMAAAAZGl5 + bmJjc2gueHR1DAAAAG8yYTFiZjVoLmJlMAwAAABwMDBhc2psci5rengMAAAAM3hwYnRmYXMub2R5 + DAAAAHNwZmZ3bHhwLjRtcQwAAABjZGMxd25iay5sbWgMAAAAYjBvbm5ueTQueHkxDAAAAGJ0cXdr + NWpmLnhjYgwAAABncTR4c3dxdC54ZjIMAAAAeHNheHVzbmsua2pzDAAAAG9pYzE0azI1LnducwwA + AABsdnpvdzRpMy5jNHYMAAAAankzbWtueGUuajJ0DAAAAGxnNXI1ZnFnLmJwNAwAAAAxZWFqZ2Js + aS5tcGQMAAAAbzBydHh1YmcuMWdnDAAAAG1panliYXlrLjRtNAwAAAAxNW9wZjIydC56aW0MAAAA + MGJlaDRta2QueWVrDAAAAHVjc2pka3FxLmJpbAwAAABwbjRndzJwZC5nZXMMAAAAem92ajRqYjUu + MXVhDAAAAGMyMjN6Y3JsLmljcgwAAABiamp0NWRhNC5heDMMAAAAMnl6a3Fvc3kuZ3Z5DAAAAGJr + NGVwa2hrLnVhdQwAAABzbG40cmZxYS5jMnAMAAAAdnB4aXh1dnEuMmR0DAAAAGtpdDJndzFhLmMz + dAwAAAB3ZWowcGhmbi4xa2sMAAAAdHh1aGhxcGUuNDEwDAAAAHhzeHR3NGgyLmZjdwwAAAAzZm4y + cmR0NC5qZmMMAAAAYmdpMnN0YTEuams1DAAAAGlxbmRvamJqLnA1YgwAAAB1cG4zYnh5bS53NTAM + AAAAbmdkdDBybnIueGtzDAAAAGN2M25tMjJlLmN3MQwAAABqZmZqeWE0bC41aWoMAAAAcmJhbXB0 + NGkub3JrDAAAAHdveTFvZ3N0LmIyMAwAAABicHcyNHN6dy50am0MAAAAd3pmams0bDIuc2l0DAAA + AHYxcXRtZzFlLnV0cwwAAAByajJjcWRycC5taDQMAAAAMGU0dWRxd3cucG9qDAAAAG5lazV6c25y + LjB0MAwAAAA1am9zZG5oZi5ndmYMAAAAbXd6aXA0MWkuaTQ1DAAAAGlqZmsxc2l0LjR3eQwAAAAx + bXZ1eDFzcS55cHEMAAAAZnpiZ2JocDUueW1xDAAAAHVpMTFkenFuLnR0bAwAAABqMTBiMDNsaS54 + NGMMAAAAMXJ4MHFuaXQueW96DAAAADJzc2puMWF2LnptbAwAAAA0bWMxMzR4dy5yNGcMAAAAaXRl + aTVxa3oudXZiDAAAAHIxMWlkZW5sLjBycwwAAABzaWoxMDU1eC50eGsMAAAAamIxMTJkYnQuY3Z2 + DAAAAGIwd2tncGFuLm5xawwAAAAzNXBlamIzZC5mZDUMAAAAMm5oeHB4MmQudDNlDAAAADFkbnhr + bzRxLmRhdgwAAABhdzB5cWZwby4xbTIMAAAAb2U1MnN0cXguMnJsDAAAAHBubGhjd2t6Lmt4MwwA + AAB4bGdvNHgxdy5odXUMAAAAbzRrNHJvNW0uMmdiDAAAAGF1azJ3dHhnLmVmMAwAAAB3ZzBkYWwz + Zy50bXIMAAAAa2p4MGVyb2EucGYwDAAAADJnNHlwdHVlLjMzegwAAABoMjNpeXJlZS5qaWoMAAAA + aGR0dzNsZWouaHdyDAAAAG5zY3JjdXkyLjFkbgwAAABrY2ZudjJzcS5qMGUMAAAAMjJxMHB3Mmwu + NWZsDAAAAHhoZWd5d3Z6LncxYwwAAAByMnhzaTVtaC5wbzEMAAAAcHp2dTV5bXYudXh3DAAAADVx + ZGRrYmJiLnFnbgwAAAAzZnM0ZDBnMS5qeHcMAAAAZW9meW9ueDUudHpoDAAAAHd2djRwcW0xLmV4 + dAwAAABweXZudXJ0ZC4zZGMMAAAAaXhlNGF0czQudHEzDAAAADFycjMxNGcyLmQyeQwAAAA1YmRz + eTR1cy4yMmQMAAAAamxiMGJ0enIubGt3DAAAADR1MGhiYWQzLnhyNQwAAAB2dmdrbDJjby4yeXQM + AAAAa2c1anNqNXIubG96DAAAAGkyaDNoZ3NhLnhkMwwAAABudnVkMTNicC5iNTQMAAAAYnAza21y + d3AuNHUzDAAAAHd3MGFzc3l4Lmp6MQwAAABvaGJ1dXNwdS5ha3cMAAAAcmNpNHpxemQuNHNmDAAA + AGZ1b2pmcTQwLmZ5dAwAAABtYXBiazJpdS5jNHEMAAAAanUxdm8wbG8ubHF5DAAAAG1hMHNxZXRq + LnF4cgwAAABxbnd1dGx6YS5neXkMAAAAamtybnJkdTMucW5vDAAAAGF2NHNsZ3cyLm5qNQwAAAB4 + a2xpamN2ai4zcjEMAAAAc3cxYnZyMHIucWN3DAAAAHZydnI0amFwLnJkMwwAAAAzM2pqYXBhcS5x + bGMMAAAAczFwZ3psaHgueXRwDAAAAHBseDN3aWh0Lnp5bwwAAABwY2llMGp5Zi4ydGEMAAAAd3No + cmV0dGYubzAyDAAAAHNyZXZ3eGN4LmY0dwwAAAAyZjNleW4yeC5nc2MMAAAAZXF3MGFsZnUud2Jr + DAAAADBpdDFtZnhzLmpxMAwAAABpbHl4dXR4ei5tNXoMAAAANHJobG9pcjAuaTAzDAAAADJ2b2Nm + ZzNtLnhycwwAAABkd295eWllaC5wZWMMAAAANWIycGk0NWEuZGk1DAAAAHlkbWRrMWJwLmtlaQwA + AABqaWRjNW5paC41enEMAAAAMDJnYjJ6aXQuM3VtDAAAAHE1ZmFjM2p6LnczaQwAAABnZmswc2Jj + My5wYWsMAAAAd3Nnd3B0d2IubG8xDAAAAGRtd3FycXpvLmthdQwAAAB5ZWVrbGp3YS5oZWwMAAAA + dHpoNHN2dTIuaHp6DAAAAHBjbXhrMWZuLjRseQwAAABjMWt1M3p2bS5hMXAMAAAAa2owMDExNWUu + dXZnDAAAAGJuNHN5cWdrLjBjMgwAAAAyb21sNWJ2NS4zdGsMAAAAdzB5eHBjd3cubWwwDAAAAGQx + ZmNqYmsxLnFseAwAAAAzcmhvM3Rkdy51MnoMAAAAb2FrdGoyZGMuZjVuDAAAAHoyaTF4MTIxLmY0 + eQwAAABra2lldXZ0NC5zY3gMAAAAeHJweXVia3kub2NwDAAAADVieXR0Z29oLmRtMgwAAABkYXYz + Ympvdi5waTIMAAAAb3NoaWh4ZG8ueTFwDAAAAG0wYnJramU0LngwagwAAAB4ZHU1ZXg0cS5memUM + AAAAeGVnNDBib2QudWp3DAAAAHBnMXYzczJiLjN0egwAAABuc2FqdWY0ci52dGcMAAAAY3FrdWtz + bHIuMjJwDAAAAGZ2dmh3aWs0LjF0NAwAAABkanRudmJwdC5seHQMAAAAa3Nkdm1wMzEuenNzDAAA + AGF3cHczZGpiLjBnZAwAAABwb21kYzF0cS52amgMAAAAZHJqZm9pbnUuejQzDAAAAGYyc2NpaHI0 + LjJubQwAAABweWR1bGNpYi56YzQMAAAAMDF3d3llNGcucGZzDAAAAGNxd2ZnaG11LnYydwwAAAB5 + anphNGJrbC5ocWcMAAAAbG5qMmpyNW0udGJtDAAAAHl2MG9tcWl6LngxdAwAAABzYXNueWEyZC40 + d28MAAAAem5iejRoYmQubHozDAAAAHZ6MzFuYXNzLjM1cgwAAAAxc2I0bnlsZy5yejMMAAAAYTQz + emVkaW4uMXYyDAAAAGV5YTUwcnZmLmg1YQwAAABkMXV4YnFkMy53bjQMAAAAMHRsNTU0bWYuZnMx + DAAAAHlmendwNHlxLnp5bAwAAAAwYXNiZHJuci5yYXcMAAAAbjNqeXZrdnAuZ3doDAAAAHJja3A1 + c2ljLm1mawwAAABrZWVmcG1nYy50dGcMAAAAcXAwZXlrdDMucTRxDAAAAHowc3UwZ3c0LmxwaAwA + AABkNWZ4cXpldS5ua2kMAAAAbTVraGpscHcuZzMxDAAAAHRjMGtqeXF1LnV5ZQwAAABhaG5ncmlv + dS56bWUMAAAAaGVxa2R1bHUudHE0DAAAAHlwZHZ3MXRtLnN0dQwAAAB2ZHc0NG4yMC5lcHkMAAAA + bGN6aTQ1MnAuaWEyDAAAAGEwcmY1azRwLnQwcwwAAABhcWg0YWc0bC5uZ2MMAAAAZWNwdWE1cWku + bWd0DAAAADV3b25lcTUyLnJndwwAAAB3NW9rNWp2ZS5xbHcMAAAAMnpjcWJrZmEubGVvDAAAAGR1 + eXpvNXVlLjNuYwwAAABqNG9nMnlzdS5sd2kMAAAAZGttcWp6ZTMuYjQyDAAAAGVmZ2FvcmRxLnhy + eQwAAAA0bzNhY3B0ZC41c3EMAAAAa2J5cHJpMm8ubGJnDAAAAGtxZ253ZXJ4LnB3dwwAAAB6dXRn + enA1bi52enUMAAAAZHZycHZ5M3EuejJzDAAAAHNidjFqcGh3LmdyYwwAAAB6ZDFoaDFsdy5wZGwM + AAAAYW1veWtvZGkuNW9nDAAAAG1uMWkzYjMzLmF5YQwAAAB2cHllbGFvci52M3IMAAAAeWpibmgw + cGouMzF2DAAAADMwcndocHBsLmt1NQwAAABrdWJwcWxvYi53MXkMAAAAazNsZm9pbWEudGtmDAAA + ADNleGlsbXB2Lmp6aQwAAABsYWF1bW1nby51em0MAAAAMHIwcTV0bHkud2ZwDAAAADN4YTBxZ2x5 + LmljcgwAAAA1NHBhMnBtdy5yamkMAAAAYW9nZWs1dzEudzMzDAAAADNvZ2t3cWVvLmhpaQwAAABp + ZmxlaTFuMS5idGsMAAAAYmxkd2R0b3Uudmk0DAAAAGFiMXNhdGo0Lm1xdQwAAABkd2ViZGwwbC5t + cjIMAAAAYTRxZG94ZWsuajMxDAAAAGszMHA1c2NuLnRsMwwAAAB1MHoxMHloby5pbXcMAAAAY3lr + ampkMWMuNGd5DAAAADVqM2wxMHEwLnlmcgwAAABhdXF6cmp1aC5ld2QMAAAAemdubGx6bnUuc3Fv + DAAAAGI1ZjNmcWRpLjB5NQwAAABzeWpobG9pby41YnMMAAAAcDVucm4weHkuMmkwDAAAAHVkeGxj + dmdtLmpnagwAAAAzZmMwZXdibS5lYXUMAAAAejFkMHVvdDAudnNqDAAAADIzeTNzZnFjLmZnZAwA + AABxMnRmYjB2ay5uMmQMAAAAa2xieXcwczUuZ2ozDAAAADN0bWhjaHExLjFxdQwAAABjZXU1M2o1 + dy5rcXYMAAAAbWRjcGVld2IuNXhxDAAAAHl6MmFpd3k1Lm9scAwAAABidHZycTFiZy5jeXIMAAAA + eXlhbGJ1Y3MuYW5nDAAAAHAzeHRvcDFpLnFlZwwAAAB3ZXdrM2dmZC5uaW0MAAAAZm1qb2d4b2cu + NTU0DAAAAGVydTJsbmowLnN1dAwAAAB6bG5xa3hnYS53MHIMAAAAZXgxeDB1MXUuYnpuDAAAAHZm + eGJidWFkLm5tNQwAAABidmo1eWxwZC53ZnYMAAAAZW5rY3FzNTUudGx0DAAAAHdsZzBxcWh2LnNy + ZwwAAABvZWVrcjJ0eC51aXkMAAAAdmh0aTB3cXAudWYxDAAAADV0cXh0enYzLnk0cgwAAAB4ZXdl + bGRrdi56YXEMAAAAamJ4YzB3dWkuMWlkDAAAAG9rdXB6MnN2LmhmaAwAAAB1MWJ5eDFlbi5taXIM + AAAAaGhwejQyeHQuZ3F4DAAAADBxbDMzZXk0LmMwagwAAAA1bTVsbjVsbi4wdTIMAAAAcnN0a2Jx + dWwudWQyDAAAAG94MDQ1azFvLmdtbwwAAAB0dWRrcW0wdS50dmwMAAAAY2ZjMWlvam8uNGluDAAA + AGozcGM1c20wLm1sYwwAAABpc2Q0MGpzdC50ZmcMAAAAazM0ZHdjd2IuejNtDAAAAHZleDV1c2Rv + Lm1nYQwAAAB5ZWpnb2d4by55bnAMAAAAdjRvbjB1bGwucHlmDAAAAHB3MmUwbHpzLjVnawwAAAB2 + enEzMW94Yi50djMMAAAAeHFzMGthZ3QueTV4DAAAAGhyYmlrNGllLnNndgwAAABjZWtsNDBzaS5y + cnkMAAAAMDV0Y3h0MmwucXo1DAAAAHF4bHZnczFiLnVjbAwAAABnMndsNDBrMS5qeTIMAAAAdWEx + cnIxZGwudWVlDAAAAHFzdWdueXZmLnhycQwAAAB6bXoxd3V0dC40bzAMAAAAYTJuajNxZ3kuajR6 + DAAAADUxeW01YmhxLmVybAwAAABpMXJsMnBlYi5odmoMAAAAcWJyanptcnUubWZqDAAAAHljNWdr + Z3lsLm1wdAwAAABkZDV3dGh5aS5xeGcMAAAAa3dlZHV2cG4uZnRhDAAAAGFqZDNkdjBoLmtqYwwA + AABocGdudG5qaC56dHIMAAAAeDRmYWF5b24uemd6DAAAAGRleDR4YjVsLnJtbQwAAAA1NWZvcXJy + bC4ybXUMAAAAd2lrdXB4b2ouc2V1DAAAAHVkYWxnenR0LmMzbwwAAAA0czJ6aG15cC4waTEMAAAA + MHB4MWRpY2wucWd3DAAAAHVxYTF4bGRxLnQydgwAAAB1MXF1aHRzdi5xdXUMAAAAMnMycmJmdm8u + anZpDAAAAGQ0bDQwbGJxLjUwZgwAAAB4YTNsajR3Yi5udHYMAAAAam9jZnc1dmQubG5tDAAAAHow + YmNsa2R1LmNwawwAAAB3MGpvZ3BzMS5hNXUMAAAAMDM0bDBvaDEuNWh2DAAAADNzY3Vzd2JzLnl3 + aQwAAABidXp6MmpuMi52MzUMAAAAa2V0c2IyeHQuaXgzDAAAAG01a3RycmtsLmJmNQwAAABkeXVq + MXRydC5rdXgMAAAAYzExcG9lMDMuaHJjDAAAAGJvd2lyZDQzLmI0YgwAAAB6M2E1eDR6dS41em8M + AAAANWw1MWswdGsueGRsDAAAAGZzNXgyYWxuLmpkZwwAAABpcno1aHAxcC54dzEMAAAANDRobGZs + djQub2lpDAAAAHVzMzMyMDJyLm1tbQwAAAAwZGV2aGIwMC5lbm8MAAAAeWdva2FscHQubXpuDAAA + AGx5ZmNscmh3LnJ0NAwAAABka3hrY2l1ai4zZnAMAAAAemtkbHNwcjEuaHQyDAAAAGE0aDNvMmFy + LnBzNQwAAABxd2YwM2lxZC5oZmUMAAAAanl0cHZ2YWEudWYwDAAAAGFvdno1ZjRhLmlhMAwAAABj + djFlMnhvdS4xbngMAAAAbGFsbzVncmoueWV6DAAAAHgzanRjbzRjLjJsaAwAAABycDR0c3ZibS5o + a2kMAAAAeTB2MjM1eG4uMG5mDAAAAG56eDR2MXBpLmNlMAwAAABocWFleXd2by5zazAMAAAAcXMw + YmRudjEuNDVjDAAAAGhpM3p5cjFsLmlidgwAAAB6YzJoM28xdy5iMnUMAAAAZ2F5eXo1dDUuNWNl + DAAAAGZhZXEwdTNrLmZndQwAAABtcmZwZ3FzdS5ldm4MAAAAY2hlbTRsb3kuZnMyDAAAAGlyc2xn + b2hkLjVibgwAAAB2YWR0YXNsaC5oeGIMAAAAZnhpMmwyeXAuNGdhDAAAAGd1aHFibjExLnVyagwA + AABmcTJ5bmZiMS5tb3IMAAAAZm50aWR4dHEudDJjDAAAAHNxenZhcnQ1LnlmZgwAAABnbDEyZ2Zx + My5nZWYMAAAAcWNtYmpha2cucGc0DAAAAG4wanFyaDNjLnBtdQwAAABpNGdmdmN0Zy5sa3gMAAAA + eW1vNXlsengudmt3DAAAAHZ1bWFocGV0LmVqMAwAAABza254ZXVhby41eG0MAAAAdHF5bmFoaGcu + dW8zDAAAAG4zMm00aGVkLnRtcgwAAAAwcHVpbjRwdy54NHAMAAAAbGgxZTBjM3QuamNlDAAAADBj + eXBuZGVwLjNrdwwAAABrdWg0NGp3aC53c3IMAAAAb3UzNDFwd2sud2lxDAAAAHBobWZtZ3dkLmli + cAwAAABhc2szdXNzcy56YjUMAAAAaHgwYzFnZmIudXQzDAAAAGFxaWloMGxlLnYyawwAAABleHVl + aWVmZi5sc3gMAAAAa2pmMG9ubmIueTNiDAAAADJ5dG1vZHpwLnMyZQwAAAB3NHczZjUyai5vaGEM + AAAAajJuamJtZHEuMTRhDAAAAG1xenExcGptLnM1NAwAAAA1ZjBvb2h4My4xamsMAAAAaWJxcjUw + anAudmVnDAAAADFsM3phZ3F4Lm80cQwAAABueGN4MzBpbS4wdDAMAAAAb3ZkYmVnZGcuMWRmDAAA + ADR3MTJncHAzLmRycwwAAABxMnlkYjJtci4xNGQMAAAANWZyZHJqNG4udmduDAAAAGtua3B5MGtv + LjFucAwAAAA0aW54a3YzZC54eWgMAAAAYm1ucnBscWcuMHdxDAAAAHh5Z2U0ZDM0LjQ1eQwAAAAz + bGN1aGZpcS4yYWYMAAAAeGtpNXYxMGguZHkzDAAAADA0bWJzeWJzLnAzdQwAAAAzZXlpYjNqMi5s + Z2sMAAAAeHlxZXE1ejMubTRhDAAAAGtqcG9ud3hqLnNjYwwAAAA1a3EyYm0wby52azEMAAAAcnNj + c21uNWkudzFuDAAAAHptNWtpY3JyLjV4ZgwAAAB3dGVvdHcxci54dW0MAAAAcXZkMDIzemguYmNw + DAAAAHlranlrY3F4LnJqMAwAAABqZHQxYnV0Zy41d2UMAAAAbW53ZjJnbXUuM3hxDAAAAG1nb2Vr + dTNhLnl3ZAwAAAA0bnAwdGdoNS5ybWoMAAAANHF2c3JndnIudnBqDAAAAHhjZGN6cnl4LmZhcgwA + AAA0azEwdnV6by56d3cMAAAAb3NhZHYyeWouc2RnDAAAAGx4c2VsYXF2LjJjYwwAAAB2dGkyMDE0 + di4zY3YMAAAAaGNhMGx3cjMueGp0DAAAAGJqbnIxMHN6LnM1eQwAAABzcjVvZ25jNS5ocHMMAAAA + YTJqaHRxeWIuczVjDAAAAGtmZG92aXptLmljdwwAAABvZDMzNDVvMS41MXoMAAAAY2VzM24zdjIu + dm53DAAAAHZycDBncG1mLnkyYQwAAAB2MDFmYWJsYi41djUMAAAAanIwZnRoYWYuNWJ1DAAAAG4x + dnYxdHN1LjFpbAwAAABnZjFiaDV6by5iNWkMAAAAY25sNHhpM3Uuc2NkDAAAAHMxaGpub2t0Lmx3 + agwAAABqbmE1em0wYy5hb3gMAAAAY2phenp1bXguNXE0DAAAADVvaW81bWN4LnoxMQwAAABrbm41 + cW1ueS5kbDAMAAAAbTNkd3JxMmEuMnJ2DAAAAGJ3YmlmM20zLm94YgwAAAB0aXdpb3VsaS4yMmMM + AAAAMXU1cjFuYXoueWhjDAAAAG52MGgxNHRzLnBpeQwAAAB3cnNzY2htcy5obWEMAAAANXF4MG81 + MmIuZnlwDAAAAGJuNHJ6aXNyLjV5cwwAAAB1cmZvMmJxYi51Y3cMAAAAc3ZlZ3Rpb2UuaWNzDAAA + AGZ6aWpmcGpsLmMwagwAAABnM3lwdTJobS5qanQMAAAAd2llaG1mejIuMTJkDAAAAGQ1eXViM3Nu + LmRoagwAAAAyZnZ3eGlsdi5pd2gMAAAAdTV4NWtwMXguenJlDAAAADEyc3Q0MDVnLmJ4dQwAAABu + cWZtMWJvZS51ZG4MAAAAdGxhczJ6Z2QuZWswDAAAAG0xdmhyMWl6LnhucgwAAAB6cHpuNHczeC5u + M20MAAAAYnNqbDBudmkuaW5oDAAAADJ0amlwd2J6LjR5NQwAAABnZ3BrZGxvdy5vd2QMAAAAZHpo + M2NmYXguNWZmDAAAAGlnM2x0ZWdkLjVpNQwAAAA1eTBnZWszdS5pMm4MAAAAa2JiZGEza3MubWl0 + DAAAAG1mbzF0amV4LjR5bAwAAABlNXFpNXppYS5sMXgMAAAAeTRjNHZsM3EuMnF6DAAAAGRhZHht + MjN4Lmx4cQwAAAB6amlqZGV2cS55bmEMAAAAM290ZXByancubW93DAAAAGQ1NXA0b3BjLng1aAwA + AAB4bGE0NGYxaS5jbmIMAAAANTFiNWZndXkuaDB4DAAAAGdsb2RnM2lmLmlyMwwAAAAwZGR2anNh + ZS5vdWYMAAAAZG5qd25lcnYuZGZ4DAAAADRoYXA1c3ZsLmowMQwAAAB2a3JsbHFndS5zemcMAAAA + MTEyYnFwcWYuaWMzDAAAAGtwNHhyeWdmLm9tawwAAAB1dWx6bmFwdS4yaGQMAAAAb2V6cmgwc2ku + ajJ4DAAAAHNudnF3aGkxLml3aAwAAAB6aWZsa24zcC5sMGoMAAAANGJ5ZnhkMDUucGJxDAAAAGRs + c2Fpb2FzLmhzMwwAAAAweGZhdDNxei5vYWkVABWOfRWOfSwV0A8VABUGFQYcGAQxOTk5GAQxMDAw + FgAW0A8YBDE5OTkYBDEwMDAAAAADAAAA0A8BBAAAADEwMDAEAAAAMTAwMQQAAAAxMDAyBAAAADEw + MDMEAAAAMTAwNAQAAAAxMDA1BAAAADEwMDYEAAAAMTAwNwQAAAAxMDA4BAAAADEwMDkEAAAAMTAx + MAQAAAAxMDExBAAAADEwMTIEAAAAMTAxMwQAAAAxMDE0BAAAADEwMTUEAAAAMTAxNgQAAAAxMDE3 + BAAAADEwMTgEAAAAMTAxOQQAAAAxMDIwBAAAADEwMjEEAAAAMTAyMgQAAAAxMDIzBAAAADEwMjQE + AAAAMTAyNQQAAAAxMDI2BAAAADEwMjcEAAAAMTAyOAQAAAAxMDI5BAAAADEwMzAEAAAAMTAzMQQA + AAAxMDMyBAAAADEwMzMEAAAAMTAzNAQAAAAxMDM1BAAAADEwMzYEAAAAMTAzNwQAAAAxMDM4BAAA + ADEwMzkEAAAAMTA0MAQAAAAxMDQxBAAAADEwNDIEAAAAMTA0MwQAAAAxMDQ0BAAAADEwNDUEAAAA + MTA0NgQAAAAxMDQ3BAAAADEwNDgEAAAAMTA0OQQAAAAxMDUwBAAAADEwNTEEAAAAMTA1MgQAAAAx + MDUzBAAAADEwNTQEAAAAMTA1NQQAAAAxMDU2BAAAADEwNTcEAAAAMTA1OAQAAAAxMDU5BAAAADEw + NjAEAAAAMTA2MQQAAAAxMDYyBAAAADEwNjMEAAAAMTA2NAQAAAAxMDY1BAAAADEwNjYEAAAAMTA2 + NwQAAAAxMDY4BAAAADEwNjkEAAAAMTA3MAQAAAAxMDcxBAAAADEwNzIEAAAAMTA3MwQAAAAxMDc0 + BAAAADEwNzUEAAAAMTA3NgQAAAAxMDc3BAAAADEwNzgEAAAAMTA3OQQAAAAxMDgwBAAAADEwODEE + AAAAMTA4MgQAAAAxMDgzBAAAADEwODQEAAAAMTA4NQQAAAAxMDg2BAAAADEwODcEAAAAMTA4OAQA + AAAxMDg5BAAAADEwOTAEAAAAMTA5MQQAAAAxMDkyBAAAADEwOTMEAAAAMTA5NAQAAAAxMDk1BAAA + ADEwOTYEAAAAMTA5NwQAAAAxMDk4BAAAADEwOTkEAAAAMTEwMAQAAAAxMTAxBAAAADExMDIEAAAA + MTEwMwQAAAAxMTA0BAAAADExMDUEAAAAMTEwNgQAAAAxMTA3BAAAADExMDgEAAAAMTEwOQQAAAAx + MTEwBAAAADExMTEEAAAAMTExMgQAAAAxMTEzBAAAADExMTQEAAAAMTExNQQAAAAxMTE2BAAAADEx + MTcEAAAAMTExOAQAAAAxMTE5BAAAADExMjAEAAAAMTEyMQQAAAAxMTIyBAAAADExMjMEAAAAMTEy + NAQAAAAxMTI1BAAAADExMjYEAAAAMTEyNwQAAAAxMTI4BAAAADExMjkEAAAAMTEzMAQAAAAxMTMx + BAAAADExMzIEAAAAMTEzMwQAAAAxMTM0BAAAADExMzUEAAAAMTEzNgQAAAAxMTM3BAAAADExMzgE + AAAAMTEzOQQAAAAxMTQwBAAAADExNDEEAAAAMTE0MgQAAAAxMTQzBAAAADExNDQEAAAAMTE0NQQA + AAAxMTQ2BAAAADExNDcEAAAAMTE0OAQAAAAxMTQ5BAAAADExNTAEAAAAMTE1MQQAAAAxMTUyBAAA + ADExNTMEAAAAMTE1NAQAAAAxMTU1BAAAADExNTYEAAAAMTE1NwQAAAAxMTU4BAAAADExNTkEAAAA + MTE2MAQAAAAxMTYxBAAAADExNjIEAAAAMTE2MwQAAAAxMTY0BAAAADExNjUEAAAAMTE2NgQAAAAx + MTY3BAAAADExNjgEAAAAMTE2OQQAAAAxMTcwBAAAADExNzEEAAAAMTE3MgQAAAAxMTczBAAAADEx + NzQEAAAAMTE3NQQAAAAxMTc2BAAAADExNzcEAAAAMTE3OAQAAAAxMTc5BAAAADExODAEAAAAMTE4 + MQQAAAAxMTgyBAAAADExODMEAAAAMTE4NAQAAAAxMTg1BAAAADExODYEAAAAMTE4NwQAAAAxMTg4 + BAAAADExODkEAAAAMTE5MAQAAAAxMTkxBAAAADExOTIEAAAAMTE5MwQAAAAxMTk0BAAAADExOTUE + AAAAMTE5NgQAAAAxMTk3BAAAADExOTgEAAAAMTE5OQQAAAAxMjAwBAAAADEyMDEEAAAAMTIwMgQA + AAAxMjAzBAAAADEyMDQEAAAAMTIwNQQAAAAxMjA2BAAAADEyMDcEAAAAMTIwOAQAAAAxMjA5BAAA + ADEyMTAEAAAAMTIxMQQAAAAxMjEyBAAAADEyMTMEAAAAMTIxNAQAAAAxMjE1BAAAADEyMTYEAAAA + MTIxNwQAAAAxMjE4BAAAADEyMTkEAAAAMTIyMAQAAAAxMjIxBAAAADEyMjIEAAAAMTIyMwQAAAAx + MjI0BAAAADEyMjUEAAAAMTIyNgQAAAAxMjI3BAAAADEyMjgEAAAAMTIyOQQAAAAxMjMwBAAAADEy + MzEEAAAAMTIzMgQAAAAxMjMzBAAAADEyMzQEAAAAMTIzNQQAAAAxMjM2BAAAADEyMzcEAAAAMTIz + OAQAAAAxMjM5BAAAADEyNDAEAAAAMTI0MQQAAAAxMjQyBAAAADEyNDMEAAAAMTI0NAQAAAAxMjQ1 + BAAAADEyNDYEAAAAMTI0NwQAAAAxMjQ4BAAAADEyNDkEAAAAMTI1MAQAAAAxMjUxBAAAADEyNTIE + AAAAMTI1MwQAAAAxMjU0BAAAADEyNTUEAAAAMTI1NgQAAAAxMjU3BAAAADEyNTgEAAAAMTI1OQQA + AAAxMjYwBAAAADEyNjEEAAAAMTI2MgQAAAAxMjYzBAAAADEyNjQEAAAAMTI2NQQAAAAxMjY2BAAA + ADEyNjcEAAAAMTI2OAQAAAAxMjY5BAAAADEyNzAEAAAAMTI3MQQAAAAxMjcyBAAAADEyNzMEAAAA + MTI3NAQAAAAxMjc1BAAAADEyNzYEAAAAMTI3NwQAAAAxMjc4BAAAADEyNzkEAAAAMTI4MAQAAAAx + MjgxBAAAADEyODIEAAAAMTI4MwQAAAAxMjg0BAAAADEyODUEAAAAMTI4NgQAAAAxMjg3BAAAADEy + ODgEAAAAMTI4OQQAAAAxMjkwBAAAADEyOTEEAAAAMTI5MgQAAAAxMjkzBAAAADEyOTQEAAAAMTI5 + NQQAAAAxMjk2BAAAADEyOTcEAAAAMTI5OAQAAAAxMjk5BAAAADEzMDAEAAAAMTMwMQQAAAAxMzAy + BAAAADEzMDMEAAAAMTMwNAQAAAAxMzA1BAAAADEzMDYEAAAAMTMwNwQAAAAxMzA4BAAAADEzMDkE + AAAAMTMxMAQAAAAxMzExBAAAADEzMTIEAAAAMTMxMwQAAAAxMzE0BAAAADEzMTUEAAAAMTMxNgQA + AAAxMzE3BAAAADEzMTgEAAAAMTMxOQQAAAAxMzIwBAAAADEzMjEEAAAAMTMyMgQAAAAxMzIzBAAA + ADEzMjQEAAAAMTMyNQQAAAAxMzI2BAAAADEzMjcEAAAAMTMyOAQAAAAxMzI5BAAAADEzMzAEAAAA + MTMzMQQAAAAxMzMyBAAAADEzMzMEAAAAMTMzNAQAAAAxMzM1BAAAADEzMzYEAAAAMTMzNwQAAAAx + MzM4BAAAADEzMzkEAAAAMTM0MAQAAAAxMzQxBAAAADEzNDIEAAAAMTM0MwQAAAAxMzQ0BAAAADEz + NDUEAAAAMTM0NgQAAAAxMzQ3BAAAADEzNDgEAAAAMTM0OQQAAAAxMzUwBAAAADEzNTEEAAAAMTM1 + MgQAAAAxMzUzBAAAADEzNTQEAAAAMTM1NQQAAAAxMzU2BAAAADEzNTcEAAAAMTM1OAQAAAAxMzU5 + BAAAADEzNjAEAAAAMTM2MQQAAAAxMzYyBAAAADEzNjMEAAAAMTM2NAQAAAAxMzY1BAAAADEzNjYE + AAAAMTM2NwQAAAAxMzY4BAAAADEzNjkEAAAAMTM3MAQAAAAxMzcxBAAAADEzNzIEAAAAMTM3MwQA + AAAxMzc0BAAAADEzNzUEAAAAMTM3NgQAAAAxMzc3BAAAADEzNzgEAAAAMTM3OQQAAAAxMzgwBAAA + ADEzODEEAAAAMTM4MgQAAAAxMzgzBAAAADEzODQEAAAAMTM4NQQAAAAxMzg2BAAAADEzODcEAAAA + MTM4OAQAAAAxMzg5BAAAADEzOTAEAAAAMTM5MQQAAAAxMzkyBAAAADEzOTMEAAAAMTM5NAQAAAAx + Mzk1BAAAADEzOTYEAAAAMTM5NwQAAAAxMzk4BAAAADEzOTkEAAAAMTQwMAQAAAAxNDAxBAAAADE0 + MDIEAAAAMTQwMwQAAAAxNDA0BAAAADE0MDUEAAAAMTQwNgQAAAAxNDA3BAAAADE0MDgEAAAAMTQw + OQQAAAAxNDEwBAAAADE0MTEEAAAAMTQxMgQAAAAxNDEzBAAAADE0MTQEAAAAMTQxNQQAAAAxNDE2 + BAAAADE0MTcEAAAAMTQxOAQAAAAxNDE5BAAAADE0MjAEAAAAMTQyMQQAAAAxNDIyBAAAADE0MjME + AAAAMTQyNAQAAAAxNDI1BAAAADE0MjYEAAAAMTQyNwQAAAAxNDI4BAAAADE0MjkEAAAAMTQzMAQA + AAAxNDMxBAAAADE0MzIEAAAAMTQzMwQAAAAxNDM0BAAAADE0MzUEAAAAMTQzNgQAAAAxNDM3BAAA + ADE0MzgEAAAAMTQzOQQAAAAxNDQwBAAAADE0NDEEAAAAMTQ0MgQAAAAxNDQzBAAAADE0NDQEAAAA + MTQ0NQQAAAAxNDQ2BAAAADE0NDcEAAAAMTQ0OAQAAAAxNDQ5BAAAADE0NTAEAAAAMTQ1MQQAAAAx + NDUyBAAAADE0NTMEAAAAMTQ1NAQAAAAxNDU1BAAAADE0NTYEAAAAMTQ1NwQAAAAxNDU4BAAAADE0 + NTkEAAAAMTQ2MAQAAAAxNDYxBAAAADE0NjIEAAAAMTQ2MwQAAAAxNDY0BAAAADE0NjUEAAAAMTQ2 + NgQAAAAxNDY3BAAAADE0NjgEAAAAMTQ2OQQAAAAxNDcwBAAAADE0NzEEAAAAMTQ3MgQAAAAxNDcz + BAAAADE0NzQEAAAAMTQ3NQQAAAAxNDc2BAAAADE0NzcEAAAAMTQ3OAQAAAAxNDc5BAAAADE0ODAE + AAAAMTQ4MQQAAAAxNDgyBAAAADE0ODMEAAAAMTQ4NAQAAAAxNDg1BAAAADE0ODYEAAAAMTQ4NwQA + AAAxNDg4BAAAADE0ODkEAAAAMTQ5MAQAAAAxNDkxBAAAADE0OTIEAAAAMTQ5MwQAAAAxNDk0BAAA + ADE0OTUEAAAAMTQ5NgQAAAAxNDk3BAAAADE0OTgEAAAAMTQ5OQQAAAAxNTAwBAAAADE1MDEEAAAA + MTUwMgQAAAAxNTAzBAAAADE1MDQEAAAAMTUwNQQAAAAxNTA2BAAAADE1MDcEAAAAMTUwOAQAAAAx + NTA5BAAAADE1MTAEAAAAMTUxMQQAAAAxNTEyBAAAADE1MTMEAAAAMTUxNAQAAAAxNTE1BAAAADE1 + MTYEAAAAMTUxNwQAAAAxNTE4BAAAADE1MTkEAAAAMTUyMAQAAAAxNTIxBAAAADE1MjIEAAAAMTUy + MwQAAAAxNTI0BAAAADE1MjUEAAAAMTUyNgQAAAAxNTI3BAAAADE1MjgEAAAAMTUyOQQAAAAxNTMw + BAAAADE1MzEEAAAAMTUzMgQAAAAxNTMzBAAAADE1MzQEAAAAMTUzNQQAAAAxNTM2BAAAADE1MzcE + AAAAMTUzOAQAAAAxNTM5BAAAADE1NDAEAAAAMTU0MQQAAAAxNTQyBAAAADE1NDMEAAAAMTU0NAQA + AAAxNTQ1BAAAADE1NDYEAAAAMTU0NwQAAAAxNTQ4BAAAADE1NDkEAAAAMTU1MAQAAAAxNTUxBAAA + ADE1NTIEAAAAMTU1MwQAAAAxNTU0BAAAADE1NTUEAAAAMTU1NgQAAAAxNTU3BAAAADE1NTgEAAAA + MTU1OQQAAAAxNTYwBAAAADE1NjEEAAAAMTU2MgQAAAAxNTYzBAAAADE1NjQEAAAAMTU2NQQAAAAx + NTY2BAAAADE1NjcEAAAAMTU2OAQAAAAxNTY5BAAAADE1NzAEAAAAMTU3MQQAAAAxNTcyBAAAADE1 + NzMEAAAAMTU3NAQAAAAxNTc1BAAAADE1NzYEAAAAMTU3NwQAAAAxNTc4BAAAADE1NzkEAAAAMTU4 + MAQAAAAxNTgxBAAAADE1ODIEAAAAMTU4MwQAAAAxNTg0BAAAADE1ODUEAAAAMTU4NgQAAAAxNTg3 + BAAAADE1ODgEAAAAMTU4OQQAAAAxNTkwBAAAADE1OTEEAAAAMTU5MgQAAAAxNTkzBAAAADE1OTQE + AAAAMTU5NQQAAAAxNTk2BAAAADE1OTcEAAAAMTU5OAQAAAAxNTk5BAAAADE2MDAEAAAAMTYwMQQA + AAAxNjAyBAAAADE2MDMEAAAAMTYwNAQAAAAxNjA1BAAAADE2MDYEAAAAMTYwNwQAAAAxNjA4BAAA + ADE2MDkEAAAAMTYxMAQAAAAxNjExBAAAADE2MTIEAAAAMTYxMwQAAAAxNjE0BAAAADE2MTUEAAAA + MTYxNgQAAAAxNjE3BAAAADE2MTgEAAAAMTYxOQQAAAAxNjIwBAAAADE2MjEEAAAAMTYyMgQAAAAx + NjIzBAAAADE2MjQEAAAAMTYyNQQAAAAxNjI2BAAAADE2MjcEAAAAMTYyOAQAAAAxNjI5BAAAADE2 + MzAEAAAAMTYzMQQAAAAxNjMyBAAAADE2MzMEAAAAMTYzNAQAAAAxNjM1BAAAADE2MzYEAAAAMTYz + NwQAAAAxNjM4BAAAADE2MzkEAAAAMTY0MAQAAAAxNjQxBAAAADE2NDIEAAAAMTY0MwQAAAAxNjQ0 + BAAAADE2NDUEAAAAMTY0NgQAAAAxNjQ3BAAAADE2NDgEAAAAMTY0OQQAAAAxNjUwBAAAADE2NTEE + AAAAMTY1MgQAAAAxNjUzBAAAADE2NTQEAAAAMTY1NQQAAAAxNjU2BAAAADE2NTcEAAAAMTY1OAQA + AAAxNjU5BAAAADE2NjAEAAAAMTY2MQQAAAAxNjYyBAAAADE2NjMEAAAAMTY2NAQAAAAxNjY1BAAA + ADE2NjYEAAAAMTY2NwQAAAAxNjY4BAAAADE2NjkEAAAAMTY3MAQAAAAxNjcxBAAAADE2NzIEAAAA + MTY3MwQAAAAxNjc0BAAAADE2NzUEAAAAMTY3NgQAAAAxNjc3BAAAADE2NzgEAAAAMTY3OQQAAAAx + NjgwBAAAADE2ODEEAAAAMTY4MgQAAAAxNjgzBAAAADE2ODQEAAAAMTY4NQQAAAAxNjg2BAAAADE2 + ODcEAAAAMTY4OAQAAAAxNjg5BAAAADE2OTAEAAAAMTY5MQQAAAAxNjkyBAAAADE2OTMEAAAAMTY5 + NAQAAAAxNjk1BAAAADE2OTYEAAAAMTY5NwQAAAAxNjk4BAAAADE2OTkEAAAAMTcwMAQAAAAxNzAx + BAAAADE3MDIEAAAAMTcwMwQAAAAxNzA0BAAAADE3MDUEAAAAMTcwNgQAAAAxNzA3BAAAADE3MDgE + AAAAMTcwOQQAAAAxNzEwBAAAADE3MTEEAAAAMTcxMgQAAAAxNzEzBAAAADE3MTQEAAAAMTcxNQQA + AAAxNzE2BAAAADE3MTcEAAAAMTcxOAQAAAAxNzE5BAAAADE3MjAEAAAAMTcyMQQAAAAxNzIyBAAA + ADE3MjMEAAAAMTcyNAQAAAAxNzI1BAAAADE3MjYEAAAAMTcyNwQAAAAxNzI4BAAAADE3MjkEAAAA + MTczMAQAAAAxNzMxBAAAADE3MzIEAAAAMTczMwQAAAAxNzM0BAAAADE3MzUEAAAAMTczNgQAAAAx + NzM3BAAAADE3MzgEAAAAMTczOQQAAAAxNzQwBAAAADE3NDEEAAAAMTc0MgQAAAAxNzQzBAAAADE3 + NDQEAAAAMTc0NQQAAAAxNzQ2BAAAADE3NDcEAAAAMTc0OAQAAAAxNzQ5BAAAADE3NTAEAAAAMTc1 + MQQAAAAxNzUyBAAAADE3NTMEAAAAMTc1NAQAAAAxNzU1BAAAADE3NTYEAAAAMTc1NwQAAAAxNzU4 + BAAAADE3NTkEAAAAMTc2MAQAAAAxNzYxBAAAADE3NjIEAAAAMTc2MwQAAAAxNzY0BAAAADE3NjUE + AAAAMTc2NgQAAAAxNzY3BAAAADE3NjgEAAAAMTc2OQQAAAAxNzcwBAAAADE3NzEEAAAAMTc3MgQA + AAAxNzczBAAAADE3NzQEAAAAMTc3NQQAAAAxNzc2BAAAADE3NzcEAAAAMTc3OAQAAAAxNzc5BAAA + ADE3ODAEAAAAMTc4MQQAAAAxNzgyBAAAADE3ODMEAAAAMTc4NAQAAAAxNzg1BAAAADE3ODYEAAAA + MTc4NwQAAAAxNzg4BAAAADE3ODkEAAAAMTc5MAQAAAAxNzkxBAAAADE3OTIEAAAAMTc5MwQAAAAx + Nzk0BAAAADE3OTUEAAAAMTc5NgQAAAAxNzk3BAAAADE3OTgEAAAAMTc5OQQAAAAxODAwBAAAADE4 + MDEEAAAAMTgwMgQAAAAxODAzBAAAADE4MDQEAAAAMTgwNQQAAAAxODA2BAAAADE4MDcEAAAAMTgw + OAQAAAAxODA5BAAAADE4MTAEAAAAMTgxMQQAAAAxODEyBAAAADE4MTMEAAAAMTgxNAQAAAAxODE1 + BAAAADE4MTYEAAAAMTgxNwQAAAAxODE4BAAAADE4MTkEAAAAMTgyMAQAAAAxODIxBAAAADE4MjIE + AAAAMTgyMwQAAAAxODI0BAAAADE4MjUEAAAAMTgyNgQAAAAxODI3BAAAADE4MjgEAAAAMTgyOQQA + AAAxODMwBAAAADE4MzEEAAAAMTgzMgQAAAAxODMzBAAAADE4MzQEAAAAMTgzNQQAAAAxODM2BAAA + ADE4MzcEAAAAMTgzOAQAAAAxODM5BAAAADE4NDAEAAAAMTg0MQQAAAAxODQyBAAAADE4NDMEAAAA + MTg0NAQAAAAxODQ1BAAAADE4NDYEAAAAMTg0NwQAAAAxODQ4BAAAADE4NDkEAAAAMTg1MAQAAAAx + ODUxBAAAADE4NTIEAAAAMTg1MwQAAAAxODU0BAAAADE4NTUEAAAAMTg1NgQAAAAxODU3BAAAADE4 + NTgEAAAAMTg1OQQAAAAxODYwBAAAADE4NjEEAAAAMTg2MgQAAAAxODYzBAAAADE4NjQEAAAAMTg2 + NQQAAAAxODY2BAAAADE4NjcEAAAAMTg2OAQAAAAxODY5BAAAADE4NzAEAAAAMTg3MQQAAAAxODcy + BAAAADE4NzMEAAAAMTg3NAQAAAAxODc1BAAAADE4NzYEAAAAMTg3NwQAAAAxODc4BAAAADE4NzkE + AAAAMTg4MAQAAAAxODgxBAAAADE4ODIEAAAAMTg4MwQAAAAxODg0BAAAADE4ODUEAAAAMTg4NgQA + AAAxODg3BAAAADE4ODgEAAAAMTg4OQQAAAAxODkwBAAAADE4OTEEAAAAMTg5MgQAAAAxODkzBAAA + ADE4OTQEAAAAMTg5NQQAAAAxODk2BAAAADE4OTcEAAAAMTg5OAQAAAAxODk5BAAAADE5MDAEAAAA + MTkwMQQAAAAxOTAyBAAAADE5MDMEAAAAMTkwNAQAAAAxOTA1BAAAADE5MDYEAAAAMTkwNwQAAAAx + OTA4BAAAADE5MDkEAAAAMTkxMAQAAAAxOTExBAAAADE5MTIEAAAAMTkxMwQAAAAxOTE0BAAAADE5 + MTUEAAAAMTkxNgQAAAAxOTE3BAAAADE5MTgEAAAAMTkxOQQAAAAxOTIwBAAAADE5MjEEAAAAMTky + MgQAAAAxOTIzBAAAADE5MjQEAAAAMTkyNQQAAAAxOTI2BAAAADE5MjcEAAAAMTkyOAQAAAAxOTI5 + BAAAADE5MzAEAAAAMTkzMQQAAAAxOTMyBAAAADE5MzMEAAAAMTkzNAQAAAAxOTM1BAAAADE5MzYE + AAAAMTkzNwQAAAAxOTM4BAAAADE5MzkEAAAAMTk0MAQAAAAxOTQxBAAAADE5NDIEAAAAMTk0MwQA + AAAxOTQ0BAAAADE5NDUEAAAAMTk0NgQAAAAxOTQ3BAAAADE5NDgEAAAAMTk0OQQAAAAxOTUwBAAA + ADE5NTEEAAAAMTk1MgQAAAAxOTUzBAAAADE5NTQEAAAAMTk1NQQAAAAxOTU2BAAAADE5NTcEAAAA + MTk1OAQAAAAxOTU5BAAAADE5NjAEAAAAMTk2MQQAAAAxOTYyBAAAADE5NjMEAAAAMTk2NAQAAAAx + OTY1BAAAADE5NjYEAAAAMTk2NwQAAAAxOTY4BAAAADE5NjkEAAAAMTk3MAQAAAAxOTcxBAAAADE5 + NzIEAAAAMTk3MwQAAAAxOTc0BAAAADE5NzUEAAAAMTk3NgQAAAAxOTc3BAAAADE5NzgEAAAAMTk3 + OQQAAAAxOTgwBAAAADE5ODEEAAAAMTk4MgQAAAAxOTgzBAAAADE5ODQEAAAAMTk4NQQAAAAxOTg2 + BAAAADE5ODcEAAAAMTk4OAQAAAAxOTg5BAAAADE5OTAEAAAAMTk5MQQAAAAxOTkyBAAAADE5OTME + AAAAMTk5NAQAAAAxOTk1BAAAADE5OTYEAAAAMTk5NwQAAAAxOTk4BAAAADE5OTkVABWO+gEVjvoB + LBXQDxUAFQYVBhwYDHp6bGd5eGE1LjR5YRgMMDExY3FhbjQueXpzFgAW0A8YDHp6bGd5eGE1LjR5 + YRgMMDExY3FhbjQueXpzAAAAAwAAANAPAQwAAAB2MWtnNWhtci5maGoMAAAAZG5zdGNwbHYuZWRr + DAAAAG1ta3lucHR0Lmw0awwAAAB5c3E1d2NrZy5idG8MAAAAcHJlZXpmdGwubXEzDAAAAGdmdXg0 + MWF2LmNvegwAAABnaHpnMmNqZS4yaDEMAAAAM2R0dngwMWkuZ2tyDAAAAGV1emQxYjQxLmJxMgwA + AAA0YXRkMnpuby5nNDEMAAAAeWtkc240dWkuYjNlDAAAAHRud2tmaXNkLnFqNQwAAAB2ZmtpbGsy + dS4xYjQMAAAAdWN0MnIzdG0ubjEwDAAAAGRjdHdocWNvLnZnegwAAABhc2hvYXZvMS5vamYMAAAA + dWdzcWJicHMuNXQyDAAAADBwcHlyNGVoLmhtcQwAAABsNWRheHZ1cy5wcDIMAAAAa3d3MTFwMmEu + ZHhvDAAAAHNobWx6YzNpLnpkMAwAAABraTJva2FteC5hc2QMAAAAaTFiYnUyd2IuZGpqDAAAADJ5 + dnZ1ZnRsLm1lcQwAAABmZzB4Y2xoay5odGgMAAAAY2l6cHh1c20ubDQzDAAAAGFtcnRlMGxhLjJ0 + cwwAAAA1ZDUzZWY1NC5tMHkMAAAAcmxpczR4NG4ubXp6DAAAAHp5aGRjdnZsLnhieAwAAAB4ZDR3 + MGZxZi5sMHMMAAAAdnFzeWFoNDAuYmFuDAAAAGtvYW1raWJxLmtvcgwAAABzNHBtdTI0dC5ia3AM + AAAAMzE1ZzI0aGsucTQ0DAAAAHN3aDVxZmVnLnduagwAAAB3Z2Z4d3dmNC5jMmsMAAAAMWpwMmls + d3IubDVzDAAAAGNvcW90NHU1LmhncQwAAABsaXgzZ2dmaS5leG0MAAAAcnhlbnNva3UuamlmDAAA + AGUya2d5aWQ0LmYwYwwAAABkZWs1NHB4bC5pYmoMAAAAdTRpMDNiYXAubjJ4DAAAADVqd3Yyc2M1 + LjJydAwAAAB1ZzR6NGxtcC4xMzAMAAAAMW5lMXVjbmgua2gzDAAAADQzb3N5cjVuLmpzaQwAAAB1 + NWpicGFmMi5mcjAMAAAAbWMxY2FvYmcuMW9xDAAAAGJlemVteHZyLmlhZwwAAABleHJ0Z2xhMS4x + dTEMAAAAb21waWxlYWwucjFnDAAAAGg0bXoxdmFiLmJlbgwAAAByZ3BkYWx2dy5kaXgMAAAANW1p + b2NiNWsuaHR0DAAAAGt0c25mdnBlLnEwZQwAAABjNDFoYWV5Yi5zdW4MAAAAaHVobGZpdTMubG5q + DAAAADBlb2F2Y3BvLmxwNQwAAABrajQ1ZXpyeC5tZTIMAAAAYXNtejVvNW0ueXVtDAAAAHN5ZGJq + cG9uLmRmeQwAAAB5dHc1Y3FtaS5iZGMMAAAAcTN6M3JlamQuMHRmDAAAAG8zdHB2cmJkLmtncAwA + AABpbWp1MWcxay40bWQMAAAAaGVwdzF0ankuZGRyDAAAADJic2NpYWd6LmF1ZAwAAABwdWN5bWFl + di5xajAMAAAAb29ncmtlY3kuMGdiDAAAAHZnMXBjNHd6LmFoeAwAAAB3ZHRkcXRnYy5oNXAMAAAA + Y2FieHdwbzAub3pxDAAAADIxcWFjYnRwLmlpdgwAAABqMHltdWJpYS40amwMAAAAMmUzeWliNXku + b294DAAAAGIxMjF0YnlvLjFtZgwAAAAyZWVpeXRteC5jMmEMAAAAaXdramt2djQudWcyDAAAAGh4 + aGgwb3gwLmh4ZwwAAABkcWFpanYyZi5mYTQMAAAAejJ2YjNqbWEudjUzDAAAAHBzNHZqdHhwLnNj + NAwAAAAzMHlyMW1kZS5lZGMMAAAAeGlhZ2UzazQuZTRlDAAAADRoNG93YWFiLmh5cAwAAABiejR0 + M2xkYy5ybnIMAAAANHFhZ2cwY3ouMG12DAAAAHB4aWxodWtxLm9jcAwAAAB6c2hjMXAxeC5yY2wM + AAAAMWphMXlzNW0uYXFnDAAAAHQ1ZGh0c2txLnVpdgwAAAB4cm5mZGJveS5mdmEMAAAAdnp6MDJw + YWQuMHdrDAAAAHB2eHNpNXRwLnFzdAwAAAB5MnZhdG1iMS5vZTUMAAAAYW1taWp6bjAuYXMxDAAA + AGt3dnVlMG0yLm01cQwAAABiNDVyYzF2di5xZjQMAAAAdWJwMDBxYWYuNDNzDAAAAHdybXpvaTFu + Lm1yZAwAAAB6NDBpY3hmMS54YTQMAAAAY241eXkxaDUuYWh0DAAAAGRkbjNmaXF0LmR6YwwAAABv + dXJ4ZTJrcS5mam4MAAAANXgzMXpwM2MuZ2pqDAAAAGdtMW5oZXBzLmJzYgwAAABmbWZ4cnRsZS5j + MXQMAAAAenZwYW1hc3kuemRwDAAAAHV0empqb2VmLnBscgwAAAB2Z3l3bmt2Zi5hNHMMAAAAY2lu + eG0zYXouYXkyDAAAAGp6YnF5czBtLmdzZwwAAAAxeGltM2lwdS4xYmsMAAAAYTRzZDU0aW0ueWIz + DAAAAGV6YXQwZ2dsLnVqMgwAAAB2cWxmM25sMy5ieGUMAAAAYXFjNXUzeHouNW5pDAAAAGlxYWYw + eHZuLmQ1bwwAAAB3YzJyM3pmdi5zY3AMAAAAbHJxbHp1bmIuMW90DAAAADFvY2FnM2Y1LnBxbQwA + AAB6YmIxaDJ5Yy5kZGoMAAAAbWFreDB4c2oud2NpDAAAADNyZ3RmamdsLmg0cAwAAAB1M2hyMGFn + NC5ndHQMAAAAcjRqZmlxdTIuZmJpDAAAAGllaXoyNTBqLmswdgwAAAB1cjR4YjFtcC56dmUMAAAA + MjVuZ3FqeWgueWp2DAAAAGQwZDRyYnJmLjVnagwAAAAxb2ZjaGZkNC53NGwMAAAAa25sYXRpYWcu + eTV2DAAAAGtyb3dza2xkLm5sYgwAAABlZWl1Mnhnbi5ldWQMAAAAbGVyeWt1dWUuYnl4DAAAAG9u + eDEwa2dnLnVnawwAAAB3Z2NlYjIwYS5jcm4MAAAAb3NycHMyczQucG95DAAAAHkyc2FtZTR4LmZx + cwwAAABkc2kydGRsMi5rdHUMAAAAc3FyMHAyNGcuMTJrDAAAAG1zcmt0ejNoLnJuaAwAAAB1YjR1 + dmNpbC5ocjAMAAAANTFxb2tiNGEuc29vDAAAAHVxcDR2dWhsLnZleAwAAAB4aHExcTVrbC5ydDEM + AAAAZ3h3aDNzdnQubjFvDAAAAGYza20ycXNwLmdtdgwAAAAxaHJjcHI1ZC5hc24MAAAAMXp5MzB6 + M2EubXpsDAAAAGhvc2R5b2ozLnJnNAwAAAA1anRoam14ZC5kZXYMAAAAdmhreTVrMGkuYm9pDAAA + AG5tcGVsdjEzLjIxNQwAAAA0ZXp5czFmZy5mcnQMAAAAYWNlYmtlMTUuMzJlDAAAAHdtbXBobjNw + LjNidQwAAABidHNmZXJpcS5naXIMAAAAeWQwbzJ1emsubHpwDAAAAGwzbmdsYXQyLjIzeAwAAABy + NGdob3hxYi5veHgMAAAAdnp2dG9vMXEucXJzDAAAADRoa3djbmRnLmVvYwwAAAB6MDFjMm55ei55 + ZHoMAAAAem1vcjExeDQucTAyDAAAAGI1eHZ0YjMzLjFxbAwAAABxcjNjbXluNS5vcGUMAAAAbTVj + dmJoMnouYjF2DAAAAGJrMWZybG4zLmp4cQwAAAB5c3pleWdkbS5zZjIMAAAAbWJ3Z2xiNTQuZWRi + DAAAAHFjMWJseTNuLjMxZQwAAABhamMwaWtycy56dXYMAAAAc2VjYm5yankuMXdpDAAAADUydWFs + aGFwLml5MwwAAAA0b2pzcXlyay4wcmwMAAAAeWxrNG9udncuc2JwDAAAAGNjNTJhdmh1LnAxZQwA + AABvdmF1ZmVoZi50bHIMAAAAdzJmbGZtYWYuc2RsDAAAAHZhY2tvaWN0LnZ3YgwAAAB5dHRhaHdi + eS4waGUMAAAAcHpiY3I1ZGkud3U1DAAAAGluajBueGpiLmkxdAwAAABleGZoeWIzby4ya3oMAAAA + NTFuY295dDQubGxjDAAAAHFkamUzbmZiLjFyMAwAAABkeHl5NTRtei4wcDAMAAAAZm9iZXcwbHgu + bnViDAAAAHB2ZDJjamdhLmhnYQwAAAAwcHNhMWJmNC5qejAMAAAAaXVsM2d6eGouem9tDAAAAHY0 + MG5rZXByLmlycgwAAAB0MWIxcmQwZi56YmoMAAAAemJ2NWJncTAuMjB2DAAAAGhkb3UwbTBpLnlv + dwwAAAAzZTFzaDQxay5pbWwMAAAAZW12b3pjeG4ubGtsDAAAAGwycHp1MXBrLnBnbAwAAABjMWhv + cXJtZi5na3EMAAAAeG1ma3R4M3Iua3g0DAAAAHB5NXR2eWFtLmRsegwAAABkZ2l1ZXlmbS5taXMM + AAAAZG5wZzN0ZGMueGhjDAAAAHV6d256Y3FhLm94egwAAAB0YXoxdm5kci5uNHAMAAAAdGFwdnB0 + aHIueXdzDAAAAGRwMXk1anZ0Lmc1dQwAAAA0M2V1dnFkZC51emkMAAAAMDIwbG0xMGgud3dlDAAA + AGNkM2dtbWVpLmwxZgwAAAB4ZW1tM2VkcS54enQMAAAANHV3M3d4dHUubnAxDAAAADNjbGtrdmQy + LnJsbgwAAAB1NHRpajN4ZS5vY20MAAAANWdicTFxaHouM3dyDAAAAGpvZXJnd3cyLm5mMgwAAAB2 + MnVqbXd0bi5pZngMAAAAc3lkb3hrZncuZ253DAAAAGJ1dzE0bGQ1LmdmcwwAAAB3M2FrbGVxdS52 + Z2kMAAAAY2NwaDF3ZDIueGR5DAAAADBnMG9vcW4zLnZwaQwAAABjcmFmMGYwbC5icWQMAAAAcHBl + ZnVobjAuM2hmDAAAAGljemt4NHozLmhjaAwAAABncTRhY25laC5pYW8MAAAAbWQ1cXRwbXcub3pt + DAAAAG5jY3ZtZTMwLndvagwAAABpbWVyYW5yaC54aTUMAAAAb2J4ZXZsdXIuZjBlDAAAADVoZ3p1 + c3ZrLmVlYgwAAABzazA0Y215bC5keXoMAAAANHh1cXZ2M3ouaWMxDAAAAHZveHV1b2ZxLm1jcQwA + AAB0djUzc21idy5hbTAMAAAAcHU0azJ2aXYuMHJyDAAAAGtubHNvaW1uLnZsdgwAAABlMGQ0NGo0 + ei53NG4MAAAAcDBoaWZ3dDEudjVtDAAAAHJoY2F6c3FzLmx2aAwAAABheWFtY2RicS5zMHkMAAAA + Ynh1Z3FsbDEubTFlDAAAADB4Y3V4b2ZtLm94dgwAAAB2cXZ2bXdjcS5sMzEMAAAAaG5mbzRwd2Iu + cjBiDAAAAHV1eDNmaHBzLmw1MQwAAABpNWpoeWJncy5tdGkMAAAAb3pmNXIza2Eudnh2DAAAAGR6 + dDR4bmNwLmJldQwAAABqNGpnNDRlYS5jM3IMAAAAYmlvajVxYXguNGNlDAAAAHVtdDAwcXZyLjJm + bwwAAABhZXprenJwby5mZ3cMAAAAZG40ZmJxNHcuajF4DAAAAGRkeXp2bnFkLmNtcgwAAABhbXIy + ZWx1Mi5yaGcMAAAAZmY0cTJiemkuc20xDAAAADU0aXZ2ancwLnFiZQwAAAAwMWVid2p0bi53eXkM + AAAAaGJ1bWRqZGkuYmZ5DAAAAGxsdmNlMTBhLnF0ZQwAAAAxeXF6MXN1Yi4wb2YMAAAAa3RsbXh4 + ZTUucHJjDAAAAGM0NGMzemd4Lmd4dAwAAABwd3h2MnJibC4zY3gMAAAAMjFuNWl1bm4ubzFiDAAA + AHNpM2JnYmUxLm5hdAwAAAB3cXRieWkzeS5td2IMAAAAcDBrd2NkcGkucHphDAAAAG53dnRjcWIw + LmMwYwwAAAA1eTRmbnIzZi5wZHgMAAAAeWlxdHdlenkuZjExDAAAAHJwbnZuenpyLm40cgwAAABu + a3ExdXExZi53MmsMAAAAZ3cxbHBjbmYueTN2DAAAADBwbHVhbDJ1LmpkMgwAAAB1a2RsMzAwZC5z + b3AMAAAAd2NubG92aHcuMWxiDAAAAGNwZXVjcjN6LnZ6egwAAABic2tqemJnYy41ajQMAAAANDNk + eml5ZHYubXZpDAAAAHd5anJ5d3FrLmtycgwAAABieTF0NHVucC54YmsMAAAAaWloZWVmbWYudnFt + DAAAADJrdWZ6eWtxLmE1MgwAAABkaG01eDFkMi50dmQMAAAAbmc0NGVoNDMuZzV4DAAAAGp6cGZt + M21qLnJreAwAAABwcXR1bHdwMS5iYXUMAAAAYmlwaWlvemcucjBpDAAAAGxyYzJnNHNrLnJudwwA + AAA0NWhnZHhxZS5scHEMAAAAd3B4emZoZWQubDUxDAAAAHg0MTJuand6LmJ4eQwAAABwdGZieWxj + Yy5tYnEMAAAAeXA0eHNuZ3guZXlvDAAAAG16NTJ5cXAwLnBkZQwAAAByajJyZGhhei5za3QMAAAA + Y3pobjJzZ3Iub2J6DAAAAHFveGVweWE0LnR4MgwAAAB6bDRoZXBuby55eTIMAAAAYWh1cHFwMHou + d2NlDAAAAHltMzBuajF3LnAydAwAAAAzcDBubzNvYy5xNG4MAAAAMGZncXVya3MuY2RhDAAAAHh3 + MGFxY3VyLnEycAwAAAB6a2ZzZnRveC4xYWUMAAAAbHZoZ3gyZ2wuZ2wzDAAAAHlmcnRtamViLnhz + cwwAAABoYTBqb25jeS5hNWoMAAAAc3VqNXl1NG0uMmV0DAAAAHZqb3NnMDI0LmswdwwAAABxcGx0 + cXd1cS5vbWYMAAAANGZhcjBnd3ouemJsDAAAAGNibGVrY2Z6LmxkbQwAAABlMHF1dm5qYi5rbGYM + AAAAZnp3NW12cjQuNHNqDAAAADJpbGN0MzVtLnpucQwAAABxb2FrZnk0dy4xeWMMAAAAZ3N2bDA1 + bnIuZGVvDAAAADRud2kzb3l2LnVybgwAAABheDMyZ2N1by5sanEMAAAANG5xMnBvY2YuM2RwDAAA + AHlncHNodmJ0LjNmcAwAAABrZjEwZTVqdy5iYjIMAAAAMHoxbTFjNGoud3l0DAAAAG9waWt3aWpo + LnM0egwAAABkZmhydTQway52eXEMAAAAem1zemMxcWIuZG51DAAAAGF5NW5rMTN4LnJmdwwAAABl + bDFjajBtaC5kZGYMAAAAbmNrdGh4bDIua2ZoDAAAAGtuZnoxMTVlLmU1awwAAABoZGt3NWdnai5h + Zm0MAAAAczN4c2FtbHcuZG55DAAAAHUwZDFxbWRlLm9ubgwAAAAyMnlodDV0cy40eHEMAAAAbXpt + MGl2ZXkudTEzDAAAAGExNG8yd3p2LmowbAwAAABwZzBuMzI0ZC5mejIMAAAAdGkxM2M1MW8uNXps + DAAAAHphYnYxaTVjLmJiegwAAAB0ZWh3cHJldi55bjIMAAAAenpsZ3l4YTUuNHlhDAAAADVjNTI1 + MGNmLmZzeQwAAAB6dGFzcms1dC5peWoMAAAAdDBuNW5uZXAudnNhDAAAAG55dmVvc3gwLndvcAwA + AABsZ3hjZHRoMC5hbWEMAAAAdGIwb3FwM2wuZXZ3DAAAAGRlY2J1azEzLmxwZQwAAABzZnFjNXJ3 + eS5uZGYMAAAAMnQ1M2p5NWEua2lqDAAAAG12Z2hqdW8xLmdpagwAAAB4MWZodmlrby5wcnoMAAAA + czM1eWVmZ3AuYXVqDAAAAG1vZ2FhYm15Lm9sbQwAAABzZGo0M2g1bS5iZXEMAAAAdHZyaDRuM2wu + a3hxDAAAAGNka3oycnd0LnUxcAwAAAB4enkwaHZvci5nMHEMAAAAbWpscWlrc2wuYml1DAAAAHgz + cWZxNTFxLnh3ZQwAAAAwemZwYWVlYy5rNTIMAAAAY2wzM2xwZWoudGc1DAAAADUxcTRxa2duLmw1 + dAwAAABiNHZucjNqby41d3gMAAAAMXVmb2YxZ3UuYjJoDAAAAG1rbTJ0a2h0LnhheQwAAAA0bWJx + bjVyNC52MGsMAAAAcXZxb2NjeXkuZnlnDAAAADRqbHgwamkxLndqcAwAAABmenlyNXlmbS5wZG8M + AAAAbTVyeXI0ZG4ubGZoDAAAAGxsMXFidHF4LnRidwwAAABtbDQ0em90NC5yaG0MAAAAbjNqcDV2 + Zm8ubjV1DAAAAHh4eW91cm8wLnA0cAwAAABkY2s1MXRwdi5jcWwMAAAAcmRvMmxxYnEueXFsDAAA + AGx2cnEzb2ZjLml2dwwAAABmaHY0MDJyaS55ZWIMAAAAM2h2ZXYxbWsucXdkDAAAAGp2bnRvZWY1 + LnJueQwAAABieXVzeW1kdS5wc2gMAAAAb2lib2x2cHAucGplDAAAAGZ5NGFnMGgzLmR6ZAwAAABx + ZmlleHpsZy5mMngMAAAAd3V3Yno1anYucHZ6DAAAAG9qNHJoNXN4LmgwawwAAAA0Mm52c2k1dS4y + ZG8MAAAAMnZ4dTVsZGMua295DAAAAHdsbGxxdXptLmR4NQwAAAB3M3ZweGxyYy4yM3kMAAAAaGFp + Y2gza2YucmVnDAAAAHdvZGQ0b2V2LndpYgwAAAByMGFvc3FvaS5ocmwMAAAAc3k0YnhsdnIuYm14 + DAAAAHJuMXU1MXd1LmhsZQwAAABqazVudm90ei5iM2QMAAAAb3BvY3V3ZHUubjVwDAAAAGt2MHB2 + dWl3LnZidQwAAABoMjQwNXptZC5kNG0MAAAAdXl0aXZzZW8udjR3DAAAAHdiZ29md3phLmZxZAwA + AABzcWRpcHl1dS5qcXYMAAAANG8wYmp2YWcuNTM1DAAAAGdhNHBkc3BhLjUzYgwAAABiaXBiaTVj + di5ham4MAAAAeHhyaWEwaGMudHZmDAAAAHp2ZXVvZWN6LjRrZgwAAAB5eWFseW50Mi50bWEMAAAA + ZDIxbG41NTEubjBxDAAAAGp3Z29mbGYzLnlwMAwAAAA0bWpwc3diYy5udGcMAAAAMnMya3Bjc2Mu + cW16DAAAAGY0cjJmdnJ5Lnp1awwAAAA0eWhtcTVheS5uczEMAAAAd3hmMjVlZHAuaDBzDAAAAGUy + d3htMXF3Lm96egwAAAAyc2M0NXB3aS4xZXcMAAAAanEzbWp6NXcuYTRsDAAAADJncGFua2d4Lnlx + egwAAABreHNtZWNycS5oeGkMAAAAMnhlMmlzM28uMXUyDAAAADRpd3Brb3MzLnp4ZgwAAAAwbmI1 + Z2Nwbi5paWMMAAAAcm5tbDUwMDEuMWN5DAAAAGplcWZoZjBuLnltegwAAABzem9yc2tlcS54cjQM + AAAAbjRiMjB4MmUud2ZvDAAAAG11ZHlyYXUyLmtnMgwAAABoMTRhZG51ci5uc2cMAAAAZDJnNWdk + MjAucjR1DAAAADRneGNodXMxLjFvdAwAAABva2t0dnFmdC56cmsMAAAAbDBtbXp2bTMuZGd5DAAA + AGFtY3hma2J6LnZobAwAAABzMjNrYjNqYS5zbGcMAAAAZ3h4b20za3MueG5oDAAAAHV6bHdlbGo0 + LjRyagwAAAAycHRjMDJzay5jbGYMAAAANGtiZmMxemQuYXcxDAAAADBha2Roam5rLmF3bAwAAABs + bHNiM3Z3eS5lM3gMAAAAYmp3eHp5YzQueHNwDAAAAGdpM3lsdnJoLnRxcQwAAAAyc2l2YW5iaS5k + aHEMAAAAajIxZ2M0ZTMuM2NsDAAAAGJnMjRpZHh6Lm4yZQwAAAB2b3pnZXJmai5yd3YMAAAAY2py + MXcxdGouazRkDAAAAGdoam5seGVjLjFuegwAAAB2dnllcGFjNC5qNGIMAAAAYWF1dHN2YnYucWRu + DAAAAHF3ZTAwYzJiLjExcQwAAABjYXh2d3AzZy55bjIMAAAAbXJpYzF1YWQuMHJsDAAAAGp0YjVz + ZXF1LmF4MgwAAABzY3pyZ2xlaS5oZnUMAAAAamdseDB3aHcuZW1lDAAAAGR4cG4xa210LmtkbgwA + AABteHplZG1qaS5qcnIMAAAAa3FiajRjNWouYXp3DAAAADR0MnJhejFvLnlqaQwAAAB1a2Z3aTNl + Yy5nemQMAAAAemVjbmx6b2QubDM1DAAAAGVia2JhZDFyLnlocQwAAAB5am1xaXlycC5ld2sMAAAA + Z3ozaWVnNHAuaWQwDAAAADBlbmFvZXQ1LnVvagwAAAB2cGUzZTJwaS5qZHAMAAAANXVsdGpweWQu + c3RvDAAAAHQybmtiNHJlLmkwZwwAAAAxaHI0M2R0di4wc3EMAAAAMXdhZ2pyencueXRxDAAAAHlt + Y3VieWdrLnduZwwAAABibG1tMmdtei52Y2gMAAAAbXM0cm1lZjEuaGxlDAAAAHN1eG9vanFmLmxu + dQwAAABnamFpb2JiMC55cmkMAAAAa3lkbWU1c28ueHRiDAAAAHEydTN1cmh5Lm5zeQwAAAAxeTJm + bHp1dC53M2IMAAAAZnJwbHlwc24ubWFpDAAAADJsbm1hdzRwLnJnegwAAABzeXRkd2J2aS5jd3oM + AAAAeWc1ZTJmemYuZjFoDAAAAGZpYjVnaGZrLndlMAwAAABjMmJ1MTF6eC5jY2UMAAAAYnc1aW1p + YjUuMDJ3DAAAAHRhZTBmb2x5LmxlcAwAAABnamExM254eS41aGUMAAAAengzbWt0bzQuNXV5DAAA + AGVrend6bTMyLnNicwwAAABnZzB6MXh2Yi5mNG0MAAAAczIwNDVkaDQudGJqDAAAADUwcmdoYmhi + LnBzZgwAAAB5ajAxcHAzdS4za2oMAAAAcjFzaHdtYm8uYm9rDAAAADQxYWQxdWFlLmRhdQwAAABk + ZmJ2MDJ1ei4xZTUMAAAAenQyMGs1ZGwubzFqDAAAAGV3Y2Npemp6LnZ6YgwAAABzZDF5cTU1Yy41 + M2cMAAAAaDBpaGZmd2MuY3BvDAAAAHV1NDBraDBkLjR5ZwwAAABkam4yZXczMC5lbmIMAAAAc3Uw + emdtaG0uaHkzDAAAADRhaXRtd2psLnpyYgwAAABzYng1Zmlwbi40cHQMAAAAY2NjeGlicG0ud2Ji + DAAAADBieHVxeDJuLmEzMAwAAAB4ZWxqcGx5dC55dWUMAAAAcXQ0bTJnYXoueXlmDAAAADN4aWJp + Y3R4LmJ1ZAwAAABnb3BhMWY0cC5icnAMAAAAcG9oc2pmMDIuaGUyDAAAAGFmYm1peXU0Lnl6bwwA + AAAwbXJsZWdreC5wa2gMAAAAeW5sempseGwubmR2DAAAAGZ0eWNtMTJrLmJkdAwAAABzMWVpa3hv + dy5qZTIMAAAAaG9sYjNjZmkuYW9iDAAAAHp4dDNhc3IxLm40agwAAAB0ZnMxZmxrMy51ZGwMAAAA + ZTJ6ZWZkYzQuNHRvDAAAAHFhdXI1cTFvLmthdQwAAABoNHRjMjVxMi5yNWoMAAAAajBibmhleG8u + YWp0DAAAAHF0cm1rNXV0LjRpMwwAAABrZ2NuZnI0eC5oaGkMAAAAMHRweTNjdnQuaDNiDAAAAHlr + MHBicGkzLmxycgwAAABkand1ZGkyaS5rdW8MAAAAaDRxamo1aWQuNGZtDAAAAGxyNDB0amIwLm8y + cwwAAAB5emxjdTB5bi5pd2UMAAAAMHZlcDViZDUuZ2ZrDAAAAHhtenhibnJnLmY1egwAAAB6bnFx + bWp3dy52aHMMAAAAYmhycmx4YnUucHkwDAAAAGJvcHplMTNvLmxhagwAAABzNGJ4ejBndy51bTMM + AAAAMmgyb3J6ZHAudnUzDAAAAGpkZGs1bWZ1Lm9hawwAAABhdHExanlseC55cXkMAAAAMGV5Y3hm + d2wuaWY1DAAAADBnMmpqbXZnLnUyaQwAAABlMGJtdXJ5bi5sZnMMAAAAaWRmazE0aTUueG5tDAAA + AGVzMndic3RzLmxmdgwAAABycXVyb3V1aS54eGEMAAAAdGNxMXJjejIucXhtDAAAAGRoeXRzdXhl + LjU1egwAAAByMGNzeWxodC5samYMAAAAandndzNmM2MuaWZiDAAAAHptcGVvbHkzLjR0MwwAAAB6 + aXdtNHRtbS5yd2oMAAAAeXhrdnhneTEud3RhDAAAAHM0emF4cWE1LnpvcwwAAAB4cW5icmkwdC5t + bnEMAAAAMmV2M2MzZ3AuZHpmDAAAAHBxNXZiem9wLmh3agwAAABjM3Qzd3IzMy5qY3gMAAAANXhq + a2YxenMudTF2DAAAAGtkbXVvYzNrLmhodAwAAABhZ2RkY3V2bC5lbnoMAAAAMnZseXYyYzUucWp1 + DAAAADV2c29rY2I0LnBocgwAAABiZmZnNWZmby40dGQMAAAAa2thY25xdHkuMnptDAAAAHcxdGs0 + cjUxLjBkNAwAAABudG5sbmJ4bi51c2sMAAAAcHQya3pobGsucTRwDAAAAHd1cmcyb2IzLjVjMwwA + AAA1cXA0MmdvaS50cGMMAAAAdGQ1dnBla3EuM2p0DAAAAHdwd20zY24xLmNqegwAAABtYWZhdnRk + Yi56cXUMAAAAcWZuams0a28ucXpkDAAAAGRja2wxdTN3LmtwYQwAAAAxc3Jha291MS5rMG8MAAAA + YWRrazQwdXYuaXhkDAAAAG5uMXE0MGxvLnYzYgwAAABpY2JnbWF3by5hdnEMAAAAYTRkMWZleTIu + NXNvDAAAAGcxejVzMWJ4LndwYQwAAAAwZWt1djU1Mi5mczAMAAAAaWcxNTFwZngua29tDAAAAHZ6 + cGJocDBnLnBxZAwAAABmMDV3dmUzby5xZDQMAAAAMWV6dWt0cXIudmZvDAAAAHpxbXB1aTRtLjNq + MwwAAABjNXFkaXBpMy55cGsMAAAAbnhvZXhvbG4udHFtDAAAAG8wazQxcTFtLmwydgwAAAA1Ymp5 + dzRibi4xNDIMAAAAZjNkZGRwaXIuM3Z5DAAAAGpnbzR6YWhsLnZpNAwAAAA0ZGMzcnNteC4zMHEM + AAAAZGNxMGozNGEuY2dqDAAAAHBhNWRsa3NzLmNxcAwAAABobGhhZXFsMy5zMG4MAAAAZHlweWJ0 + cWQuMTBpDAAAAG50NDBmZ3JqLmRqeQwAAAAzZ3V1emJubC4yMnIMAAAAd2Qyc29zcHcuMWVpDAAA + ADRnNWxhc2liLmVyMQwAAAB6aGtlYmxkcC5xbW0MAAAANHl3cGRxMWguZHpuDAAAAGpjMmJ4aHRu + Lmw1cgwAAAB6djJqZG93cS5reW4MAAAAM2N0cXZncnkuMTFvDAAAADMyMjV2cXpoLms0YwwAAABr + b2gxMGMxMC5mbWEMAAAAemlieGR1ZXcuNXJjDAAAAHZ6cTFtYmFyLjEyZgwAAAB5cnBucDJnZy5p + NGsMAAAAY3N0MGl4cXUudmNnDAAAAG5veXkzY3p6LmwybwwAAABvdmdvaWs1cS54c3MMAAAAaW5x + cHhxMHoueWdpDAAAAGJ0ZGtnazBrLnZxcQwAAABjazFzbXlnei5xb3UMAAAAeXBicndkd3YubWFi + DAAAAGlmYml0ejJ1LmpvMAwAAAB5YXcwMjUxMi5xY2UMAAAAYWZ1cTNzb3IubGRiDAAAAHFyeXJh + MWFsLjJwdQwAAAAzZ3cwdGtrdy5sNWEMAAAAdXF2eGJ6NGMuenhmDAAAAGZ4cTVmZHplLnJ1bwwA + AAB6aTRvZGpvNS52Z2IMAAAAaXJpdmN5c20ubjVpDAAAAG15NHlwcmVoLnVueAwAAAB5c2ZocWpq + dS4xa2UMAAAAMmQwazA0MHkuM2kwDAAAAHk1NWhud29kLnp4dQwAAABsNXV2YTNoaC5oNHAMAAAA + cDVoYXZ2bmMubHo1DAAAAHhraHpzdmZsLjB4dwwAAAA1dDN3cjFhaC5hdW4MAAAAaHdwMDRjZnUu + bWFjDAAAAHJvNHkwMXc1LmowawwAAABrdXozYmN0ai40dG0MAAAAcnR3c2prd3MubzF3DAAAADNj + eXN0cGtuLnZ2YwwAAAAyZWR5M2hrcS56cmsMAAAAczN1emNqeTUueGF0DAAAADM1ZmNndWpwLjNs + dAwAAAAybmEzbXpmei5mY3oMAAAANXllcWphYXouMjBvDAAAADBna29pNHZwLmI1dwwAAAAyZHli + ZWN2NC5iYWUMAAAAaWQxbno1YTUua3d5DAAAAGZzc3ExM3FvLm9yZgwAAAAxeGJxMjBudi5oM2YM + AAAAazRsZ3F4aTAuZjN4DAAAAGgxYTR3MWZoLmRmbQwAAABqYTB0eDFiay53MDAMAAAAbDVmZnhk + YnkuMHVhDAAAADJzZTRhZ3B4Lmc1bAwAAABnbmdzY2l3MS53MGsMAAAAMWZ0bXhrYzMubGF0DAAA + AHNzbWF0b3JiLmJtbAwAAABseHlkajNidS4wYm0MAAAAaGwwaWkxc2suMHAzDAAAAGJhbnJ4MWwx + LmJ2bgwAAABwcnppcGd0eS51MXQMAAAANWFhNWwwcG8ucmUzDAAAAHQzM2VjeHI0LmJpaQwAAABp + bHh6MTRoMC5ycXAMAAAAdWFxMmx1MGsuemF2DAAAAGl6eTM1ZGZiLnluZgwAAABvMjJjYmV2bS5j + bGIMAAAAcGxsNGhjaXYuZHNnDAAAAHRidWl3c3RuLjJneAwAAABnM3dnMmJ0aS4yd2MMAAAAMWNv + NWY1MXIuMjRnDAAAAHNnZG56cXhkLjBqbgwAAAByenh6MTMzei55bW4MAAAAMm95ZWVpajEuMXVs + DAAAAHVmYnZ2MTRjLjBhNQwAAABhYWJnY2VtaC5iZm4MAAAAMXd1eGJhZncubHp6DAAAADFwdDEy + ZGxxLmxzdQwAAAAybjJ2d2U0bi51ajAMAAAAdTFnZ3YzdzAuaHkzDAAAAGlua2kxbXB3LmhkMgwA + AABrc3V5bWx6by5reHgMAAAAbWt4enR0cWMubXR5DAAAADNiNGI1czR0Lnd2bwwAAAB5enVoaGdw + NS5oZnQMAAAAbjNneWM0cTUuZzMwDAAAAGVndW9ldHg0LmNtMAwAAABta2JobmJyZS51djUMAAAA + eWt5eHYwbjQuc3NmDAAAAGw0bmhhYWFsLnFnbQwAAAB6b3hlMGVnZC50MXkMAAAAZnZhbXQycWou + MWVlDAAAAG16Y2J2b2ljLnE0cwwAAABoMmtrZGdsbi5vemYMAAAAYnpkbGhhMTEuczJyDAAAADVj + MWZxb2RmLnBxcwwAAABkanRxcXN1aS55MnYMAAAAYXVpdG13NWEuemZtDAAAAG9kdzEwZ3RsLmFx + NAwAAAB4cHJkdDFwcS52NW0MAAAAbG1qcWtycXYuYjFuDAAAAHBhY21pcjJnLnBkNAwAAABvbGdo + M2F3Zi5qanAMAAAAeXF6bG9uMHQucnMwDAAAAHh6eHNpeGdvLnVocAwAAAB0emt1bG5jaS5ndGcM + AAAAd2tlamFwMHkuemZlDAAAAGwzYnQzb2UwLmxnbAwAAAB6YnVoYmNlci40d2QMAAAAMnFwcDNu + b2QuZmNnDAAAAHZ4M3IydHZ2Lnl1MAwAAAB6NHVidnQxby5xYWkMAAAAemNlc2JuZW4uM3ZyDAAA + ADV5Znh2ZHV1LmhtbwwAAABvbXdjajFoNS5zbnIMAAAAaTJuaG9rZGEuM21zDAAAAHc1aGxwYXg1 + Lms1ZQwAAAB2NHAzcHQ0Zy52Z2oMAAAAMzMwNXFtZGguZngzDAAAAHNycjV2a2liLjN0NQwAAAB2 + cHJ0Z3N6ai4yYWkMAAAAY2dva3pqc2EuYWdwDAAAAGk0MGFzeDN4LjAybQwAAABnMGgxZ3d5aC4y + NDAMAAAAZWIwczBoaGYucjByDAAAAHlscnFua21nLndyZwwAAAA0c3Ayd3J2My40bzIMAAAAcXE1 + Z2ZyZ2YuZTRkDAAAAHprMjF4aHRxLnM1bwwAAAA0aWh3NXEzcC5zMDQMAAAAZmRxdmdmNG8udGxs + DAAAAGYxdnlnbmQzLnF3MwwAAAB4bGN6cWV0Mi5maXoMAAAAamVpNXl0NGEuNHVhDAAAAHJmNGti + ZmdmLndxegwAAAB4bnNoYWJ0aS5oYnQMAAAAenhwcnN4cnkuaGJ6DAAAADFnYWI1dW1kLnN5ZAwA + AABvdm1uem01MS5sNXYMAAAAd3BlZGF0NWcub2thDAAAAGp4YjV3aDU0LjVnZAwAAAAxYTIyZXBj + cS4xMnoMAAAAM2VucDFsaHYueDVhDAAAAGRtd29ocGdpLnJuYgwAAABqdmZ1MGRwMC4weXUMAAAA + Zmt6aHVwcjIudGx1DAAAAGN6Z2l3emV4LmRqYgwAAABxcGptM201ei56dmIMAAAAMHd1d2VobW4u + bW9hDAAAAHkxZ3FtajEzLnFkZAwAAABoc2pwYWlkdS40eWwMAAAAaG52cHdyMWUuaTRrDAAAAHNt + dG1yZHlmLnYwawwAAABrdXBlb3hqbi5mMzAMAAAAZW9ucGNubnguYmIzDAAAAGRvdmh5MXd4Lmhl + YgwAAAAydHRuMXRjby5nZmgMAAAAMmhkbzQ0bjAucmRiDAAAAGVpZTF1dmJtLmxkZgwAAABqenBl + dXduay4wZjQMAAAAZDIxZjVjenYudWN4DAAAAHB5aWZmaTRxLnlxNAwAAABtZXNsNXRldy40dmYM + AAAAc3ZyMDFjcHEudWduDAAAAGpvemx1Mmp4LnJnZwwAAAB4cGhoZWEycy5rbG0MAAAAbnJ3cTVt + NWkuMmx5DAAAAGlqZ3Nnc3Q0LjBmbwwAAAA0dWdmbHVmei5xdGUMAAAAeHkxZG4xMWkucDBsDAAA + AGR0dHdvY2R1LjNuNAwAAABxYW9xMGdhaS5uMW0MAAAAbHNncnB3bXcuemsxDAAAAGUxMHhwb2Jx + LmZnbwwAAAAzbGMydGo0aC5lemIMAAAAa3d3azBydjUuMm8xDAAAAHAya3ZhZGNpLmpkYgwAAAB4 + cmR2bW5sbi52MXcMAAAAYXowYm51bG4ua3drDAAAAGNtaXF5NHZqLmFlMwwAAAAxbmNmMmEwbC5s + MXQMAAAAMzVhM2ZmcmIuZmFnDAAAAGh4bHJpZDIwLmNhbQwAAABhczNwcHNmdS5xd2IMAAAAdjBp + MXZ6ZXguZXduDAAAAHczcHNqZ21iLnYxZwwAAAB4angyNG9uZy56bGYMAAAAM3RnbzFnZnAuYnIx + DAAAAGkxaDJ1b2hqLmt3NQwAAAB4ZGp6YWIway53eXEMAAAAZGphMnowMjEuNTJpDAAAAHBxdHpo + cmNkLm93cgwAAABobXZkaXdndy4wb2cMAAAAM2d5aGd0YzMuanBkDAAAAHgxYWxnZGVuLnd0dgwA + AABqYjBrcGhneC51MHgMAAAAa2kxMjRpdmQuMHhqDAAAAHkxYnpyb3p1LmZqaQwAAABtM20xZGIz + di5ka2IMAAAAZDAzbHB2cWYuaHl3DAAAAHdvcmZyZnhuLjJ0agwAAABjMnJxemk0bC5kdXIMAAAA + MjNoMmtraHEuc2h6DAAAAGxjeXl3Y2ZrLmZjegwAAABleWQ0M2NyYy41d2kMAAAAMmhycWdzM28u + amkyDAAAADJ0eTR1a2tsLjVjcwwAAAB3aHJnbmQ1Yi5lYTAMAAAAamcxa2J2Y2cuYXR2DAAAADFq + cWFyemhiLmNyYgwAAAAwdWhkbWY0NS5meW4MAAAAamIzYW9tMm8uMGhtDAAAAHR1cnppcTRvLmpi + bgwAAAB5c2d0dHN4aS5ucHcMAAAAcDN0eHVtcXIubWFzDAAAAHZqemVlanEzLmsydwwAAABmcG01 + bmdrcy52eDAMAAAAbXBzMXRtcXguM3VvDAAAADVoajFsajJkLnp5cAwAAABtMXhnb3oyay50Z3IM + AAAAZHNpcXpvdGgucnFqDAAAAHFxb3B5d3R5LmhoaQwAAABjaXVsYWtzdC5wdXEMAAAAeWdvNGJ1 + MmsuMnVnDAAAAGZtY2ticm5vLnIxYgwAAABobGhhaDRuby5wcncMAAAAZGI1dm92cGoudXFzDAAA + ADM1MnpoM3h5LjJhYgwAAAAzY3poa3VvMC5penMMAAAAM2YxanljZzMuajB2DAAAAGtiZHIwdzR1 + LmdtdAwAAAB6eDNhNHZsYS51c2sMAAAAc2J1ZmZibjQubzRwDAAAADJjMGZ2c2UzLmt2eQwAAABw + ZWN4MzNjMS56MDQMAAAAa21zYjFrNDIuNXBqDAAAAGNwM3ZianZ0LnU1egwAAAAwbDRkbWhxdC40 + eG4MAAAAYWwzM2piY2MuZ3hrDAAAADNxaXBqeHYxLnhhMAwAAABlaTVjZ3BiMi5qdWEMAAAAZTVv + dWNnd2subW1mDAAAAGVqZmpzMGhzLm1jbAwAAAAzaXhuZWt4bS54d28MAAAAdGRybWdoenoudGNi + DAAAAHU0dzFldjNnLnJ5ZAwAAAByY3Bta3p3ai5lcXcMAAAANWVrbG41MHcuNXM0DAAAAHh4NWx6 + djBtLnV3bQwAAAAwMTFjcWFuNC55enMMAAAAa25iY3JwYmwuZmx6DAAAADUzbXo1d2dvLnVsbQwA + AAB6eTByMGxzci5zMjIMAAAAYWhudGJ4ajQuYmJtDAAAADQybDF3MnlhLmJzawwAAAB6bzAxNW01 + aS50enQMAAAAYmF2YWZndTIucTNlDAAAAGdzaHljcXFmLjFpZAwAAAA1YjAzNXN5ZC4ybGcMAAAA + bHlpZnkwaG4uenh3DAAAAGV0YXBwbGdqLmczYQwAAABtNGp0dXFhdi52ZWwMAAAAcWRvb2t5eHYu + cnF3DAAAAG9qeGI0YWhsLnZjMAwAAAA0eWNqeXd6ai54aWQMAAAAc3ZqdW1uNXguNW9rDAAAADJ4 + amZsMmZhLm9icgwAAABjd2Z0aHBqdC5hcXMMAAAAdGM1M2JxeHMueDRjDAAAAHl4amRnYnYwLm9s + aAwAAABpcW5tNWh0ZS4wd2IMAAAAbGcxeXprNHEuNWpkDAAAADUydG92MmJ6LjVkaAwAAABrYzNx + MWtjMS5qeXkMAAAAZ3NoeHYzeTEuNXR6DAAAAGpydWtvMGNxLnJnYwwAAABlamFydmxmaS41cDUM + AAAAeXgwdGpzeWEudGlvDAAAAGd1MGJ5NGJvLm4weAwAAABrejVraDB6Yy53MGQMAAAAejNwZm5h + eHIuaWF6DAAAAHR5ZWI1YnFqLjN4NQwAAAByd3RzbmJuci56dGEMAAAANXB0dDV5MzQuNWhiDAAA + AGhwZmVwMHFyLmFrYwwAAABiaW5rMHlyYy5qd28MAAAAcG1lenBzamwuamQzDAAAADAzbGVnZHRv + Lmx5eQwAAABiMzNkYWk0My5xZXgMAAAAZGxudHFnbzMubm5xDAAAAGJnaGJoa2VlLnRpcwwAAABy + azBxM3Btay5jNDAMAAAAdnFjYXIxMnUua3pwDAAAADVid2FvZmJuLnVwZwwAAABiZzJremkwZS53 + cGkMAAAAZTU0enhjZnMubHR5DAAAAGVtMDVzMnBpLm90MQwAAABvYjFwMzUxbi54bWwMAAAAMGh1 + a3R4d2wuamV0DAAAAGtiaDF6dWxpLnA0MgwAAAB6b2NrZWtiYy5razAMAAAAd2pwYTFjMnIudmpx + DAAAAHVkbmFrMXlhLjJscQwAAABub3BsenF1Zy5mY3cMAAAAZWdhZGJpd2EuZnN0DAAAAGJ2cmdk + M2tjLmZmYgwAAABybnhrY2xnMy5lcmEMAAAAZGhmeGtoMmwud2wxDAAAAGFyZHBqbDNoLmJvYwwA + AAB3a2gzdWZ4eC55cGoMAAAAeXF5YmJoc2IucHVpDAAAAHRtem41cXlzLnpwcwwAAABhNGVjZ3Zi + Yi51cGsMAAAAem5wMmd6MmoubGwwDAAAAHJwMHJhcHhuLml6cwwAAAA0dHp0ZWRtbC54ZXcMAAAA + bXEwc2Zqem0uMGVyDAAAAGN5Mmx3b24xLnczdwwAAAAxbHV1cm5xYi5qcGUMAAAAc2g1dmdrM3Au + aHRqDAAAAHRlMHduYm8yLmJwcgwAAABteTB1czE1NC51b24MAAAANWhmZ2NyanYuanJjDAAAAGlm + bGxpMHl3LjNkegwAAAA1eWJkamdnaC5nZHEMAAAAY2dqaWFvejUubHlpDAAAAHJ6aXc1MnViLmM0 + ZQwAAAByNG1xMGlzZC4xbWMMAAAAeGJlcW5md2UuNG8xDAAAAHVwdTF3aXN4LnhvaQwAAABoaGd4 + ZHk0cS5qYnYMAAAAcXYzYjBqb3AubWFhDAAAAGR3NGQxZ2hjLjRjMQwAAAB0cHNrdnJyMS5iczAM + AAAAb3h0Z2N1M2EuZ2gxDAAAADNvamFlaGJ4Lm9rdAwAAAA1dGF0ZmZwby50ZjQMAAAAdHM1c2N5 + c2gudnZwDAAAAHZncGE0amJrLnRrMgwAAABoamN3c2RvMi5waHEMAAAAenZjMTMwZ3UuYjBpDAAA + AHI0MWdrb2pjLnV3ZwwAAABnaHUwazByai40c24MAAAAZnoxM294NGgubWxqDAAAAHMyZ2JjNXBq + LnF0NQwAAAAycHJmb3Joai5mYjEMAAAAdm1icm1ucWIubGIzDAAAAG1paHd2NWxhLmFmZwwAAABk + dGhuZTRubC5saWsMAAAAdHh0dmZpdHcubnN2DAAAAGtiZHR5bjBsLjFhaAwAAABzYmhia3Zhcy5q + Mm8MAAAAMHJzcDRtZmouZXU1DAAAAHpxeXVzZTV3LmY1NQwAAABrZ2dwZzVzZS5nYWgMAAAAbTRj + aTV4ZXoubGxhDAAAADEycTFkenBxLmEwdAwAAABuY3lyMnFzcy41YTAMAAAAc2Zka2VsbW0ub3Ry + DAAAADRiZWdsMmZtLnh4NQwAAABzdnBscXhoNS5lbHcMAAAAZ3hhb2FhbzUuZjJ4DAAAAG40c3Jk + Zmt6LjQ0dgwAAABicHR2Mm5qbS50amwMAAAAY2FoZTBidGouYTBzDAAAAGFkMGQ1dHJoLm0xdgwA + AAB6dWswMW9hMy51M3gMAAAAcXoxdm90c2kudXg1DAAAAGl2YnduMjAxLnIzNQwAAABveW5xaHd2 + YS5ldGIMAAAAdHAzaG56b3AuZjVlDAAAAGpxcjJwbHhqLmVldAwAAABnY2FvZG1iYS56M3MMAAAA + andxejBkaGEueGF1DAAAAGt2MG5oMmZuLnZpYgwAAAAxNGMzanEwdS5peW0MAAAAM212NGw0NTEu + aGFsDAAAAGVxbXpoMXgwLjJuawwAAABzbGZub2xndy5jMHgMAAAAdTNmZjVkdmIuZHozDAAAADVw + NWZlMm9pLnN6cwwAAAAybmF5ajFwdS5pZG8MAAAAZDAycmZiM24udjBhDAAAAGx3eW40d29jLmQy + ZwwAAAAycjR6bHRubS5qMWoMAAAAMWlyYnltMnQudXdpDAAAADBheHpqbTRwLjJycQwAAABibXR1 + eTBsaS4yZ2UVABWO+gEVjvoBLBXQDxUAFQYVBhwYDHp6bGd5eGE1LjR5YRgMMDExY3FhbjQueXpz + FgAW0A8YDHp6bGd5eGE1LjR5YRgMMDExY3FhbjQueXpzAAAAAwAAANAPAQwAAAB2MWtnNWhtci5m + aGoMAAAAZG5zdGNwbHYuZWRrDAAAAG1ta3lucHR0Lmw0awwAAAB5c3E1d2NrZy5idG8MAAAAcHJl + ZXpmdGwubXEzDAAAAGdmdXg0MWF2LmNvegwAAABnaHpnMmNqZS4yaDEMAAAAM2R0dngwMWkuZ2ty + DAAAAGV1emQxYjQxLmJxMgwAAAA0YXRkMnpuby5nNDEMAAAAeWtkc240dWkuYjNlDAAAAHRud2tm + aXNkLnFqNQwAAAB2ZmtpbGsydS4xYjQMAAAAdWN0MnIzdG0ubjEwDAAAAGRjdHdocWNvLnZnegwA + AABhc2hvYXZvMS5vamYMAAAAdWdzcWJicHMuNXQyDAAAADBwcHlyNGVoLmhtcQwAAABsNWRheHZ1 + cy5wcDIMAAAAa3d3MTFwMmEuZHhvDAAAAHNobWx6YzNpLnpkMAwAAABraTJva2FteC5hc2QMAAAA + aTFiYnUyd2IuZGpqDAAAADJ5dnZ1ZnRsLm1lcQwAAABmZzB4Y2xoay5odGgMAAAAY2l6cHh1c20u + bDQzDAAAAGFtcnRlMGxhLjJ0cwwAAAA1ZDUzZWY1NC5tMHkMAAAAcmxpczR4NG4ubXp6DAAAAHp5 + aGRjdnZsLnhieAwAAAB4ZDR3MGZxZi5sMHMMAAAAdnFzeWFoNDAuYmFuDAAAAGtvYW1raWJxLmtv + cgwAAABzNHBtdTI0dC5ia3AMAAAAMzE1ZzI0aGsucTQ0DAAAAHN3aDVxZmVnLnduagwAAAB3Z2Z4 + d3dmNC5jMmsMAAAAMWpwMmlsd3IubDVzDAAAAGNvcW90NHU1LmhncQwAAABsaXgzZ2dmaS5leG0M + AAAAcnhlbnNva3UuamlmDAAAAGUya2d5aWQ0LmYwYwwAAABkZWs1NHB4bC5pYmoMAAAAdTRpMDNi + YXAubjJ4DAAAADVqd3Yyc2M1LjJydAwAAAB1ZzR6NGxtcC4xMzAMAAAAMW5lMXVjbmgua2gzDAAA + ADQzb3N5cjVuLmpzaQwAAAB1NWpicGFmMi5mcjAMAAAAbWMxY2FvYmcuMW9xDAAAAGJlemVteHZy + LmlhZwwAAABleHJ0Z2xhMS4xdTEMAAAAb21waWxlYWwucjFnDAAAAGg0bXoxdmFiLmJlbgwAAABy + Z3BkYWx2dy5kaXgMAAAANW1pb2NiNWsuaHR0DAAAAGt0c25mdnBlLnEwZQwAAABjNDFoYWV5Yi5z + dW4MAAAAaHVobGZpdTMubG5qDAAAADBlb2F2Y3BvLmxwNQwAAABrajQ1ZXpyeC5tZTIMAAAAYXNt + ejVvNW0ueXVtDAAAAHN5ZGJqcG9uLmRmeQwAAAB5dHc1Y3FtaS5iZGMMAAAAcTN6M3JlamQuMHRm + DAAAAG8zdHB2cmJkLmtncAwAAABpbWp1MWcxay40bWQMAAAAaGVwdzF0ankuZGRyDAAAADJic2Np + YWd6LmF1ZAwAAABwdWN5bWFldi5xajAMAAAAb29ncmtlY3kuMGdiDAAAAHZnMXBjNHd6LmFoeAwA + AAB3ZHRkcXRnYy5oNXAMAAAAY2FieHdwbzAub3pxDAAAADIxcWFjYnRwLmlpdgwAAABqMHltdWJp + YS40amwMAAAAMmUzeWliNXkub294DAAAAGIxMjF0YnlvLjFtZgwAAAAyZWVpeXRteC5jMmEMAAAA + aXdramt2djQudWcyDAAAAGh4aGgwb3gwLmh4ZwwAAABkcWFpanYyZi5mYTQMAAAAejJ2YjNqbWEu + djUzDAAAAHBzNHZqdHhwLnNjNAwAAAAzMHlyMW1kZS5lZGMMAAAAeGlhZ2UzazQuZTRlDAAAADRo + NG93YWFiLmh5cAwAAABiejR0M2xkYy5ybnIMAAAANHFhZ2cwY3ouMG12DAAAAHB4aWxodWtxLm9j + cAwAAAB6c2hjMXAxeC5yY2wMAAAAMWphMXlzNW0uYXFnDAAAAHQ1ZGh0c2txLnVpdgwAAAB4cm5m + ZGJveS5mdmEMAAAAdnp6MDJwYWQuMHdrDAAAAHB2eHNpNXRwLnFzdAwAAAB5MnZhdG1iMS5vZTUM + AAAAYW1taWp6bjAuYXMxDAAAAGt3dnVlMG0yLm01cQwAAABiNDVyYzF2di5xZjQMAAAAdWJwMDBx + YWYuNDNzDAAAAHdybXpvaTFuLm1yZAwAAAB6NDBpY3hmMS54YTQMAAAAY241eXkxaDUuYWh0DAAA + AGRkbjNmaXF0LmR6YwwAAABvdXJ4ZTJrcS5mam4MAAAANXgzMXpwM2MuZ2pqDAAAAGdtMW5oZXBz + LmJzYgwAAABmbWZ4cnRsZS5jMXQMAAAAenZwYW1hc3kuemRwDAAAAHV0empqb2VmLnBscgwAAAB2 + Z3l3bmt2Zi5hNHMMAAAAY2lueG0zYXouYXkyDAAAAGp6YnF5czBtLmdzZwwAAAAxeGltM2lwdS4x + YmsMAAAAYTRzZDU0aW0ueWIzDAAAAGV6YXQwZ2dsLnVqMgwAAAB2cWxmM25sMy5ieGUMAAAAYXFj + NXUzeHouNW5pDAAAAGlxYWYweHZuLmQ1bwwAAAB3YzJyM3pmdi5zY3AMAAAAbHJxbHp1bmIuMW90 + DAAAADFvY2FnM2Y1LnBxbQwAAAB6YmIxaDJ5Yy5kZGoMAAAAbWFreDB4c2oud2NpDAAAADNyZ3Rm + amdsLmg0cAwAAAB1M2hyMGFnNC5ndHQMAAAAcjRqZmlxdTIuZmJpDAAAAGllaXoyNTBqLmswdgwA + AAB1cjR4YjFtcC56dmUMAAAAMjVuZ3FqeWgueWp2DAAAAGQwZDRyYnJmLjVnagwAAAAxb2ZjaGZk + NC53NGwMAAAAa25sYXRpYWcueTV2DAAAAGtyb3dza2xkLm5sYgwAAABlZWl1Mnhnbi5ldWQMAAAA + bGVyeWt1dWUuYnl4DAAAAG9ueDEwa2dnLnVnawwAAAB3Z2NlYjIwYS5jcm4MAAAAb3NycHMyczQu + cG95DAAAAHkyc2FtZTR4LmZxcwwAAABkc2kydGRsMi5rdHUMAAAAc3FyMHAyNGcuMTJrDAAAAG1z + cmt0ejNoLnJuaAwAAAB1YjR1dmNpbC5ocjAMAAAANTFxb2tiNGEuc29vDAAAAHVxcDR2dWhsLnZl + eAwAAAB4aHExcTVrbC5ydDEMAAAAZ3h3aDNzdnQubjFvDAAAAGYza20ycXNwLmdtdgwAAAAxaHJj + cHI1ZC5hc24MAAAAMXp5MzB6M2EubXpsDAAAAGhvc2R5b2ozLnJnNAwAAAA1anRoam14ZC5kZXYM + AAAAdmhreTVrMGkuYm9pDAAAAG5tcGVsdjEzLjIxNQwAAAA0ZXp5czFmZy5mcnQMAAAAYWNlYmtl + MTUuMzJlDAAAAHdtbXBobjNwLjNidQwAAABidHNmZXJpcS5naXIMAAAAeWQwbzJ1emsubHpwDAAA + AGwzbmdsYXQyLjIzeAwAAAByNGdob3hxYi5veHgMAAAAdnp2dG9vMXEucXJzDAAAADRoa3djbmRn + LmVvYwwAAAB6MDFjMm55ei55ZHoMAAAAem1vcjExeDQucTAyDAAAAGI1eHZ0YjMzLjFxbAwAAABx + cjNjbXluNS5vcGUMAAAAbTVjdmJoMnouYjF2DAAAAGJrMWZybG4zLmp4cQwAAAB5c3pleWdkbS5z + ZjIMAAAAbWJ3Z2xiNTQuZWRiDAAAAHFjMWJseTNuLjMxZQwAAABhamMwaWtycy56dXYMAAAAc2Vj + Ym5yankuMXdpDAAAADUydWFsaGFwLml5MwwAAAA0b2pzcXlyay4wcmwMAAAAeWxrNG9udncuc2Jw + DAAAAGNjNTJhdmh1LnAxZQwAAABvdmF1ZmVoZi50bHIMAAAAdzJmbGZtYWYuc2RsDAAAAHZhY2tv + aWN0LnZ3YgwAAAB5dHRhaHdieS4waGUMAAAAcHpiY3I1ZGkud3U1DAAAAGluajBueGpiLmkxdAwA + AABleGZoeWIzby4ya3oMAAAANTFuY295dDQubGxjDAAAAHFkamUzbmZiLjFyMAwAAABkeHl5NTRt + ei4wcDAMAAAAZm9iZXcwbHgubnViDAAAAHB2ZDJjamdhLmhnYQwAAAAwcHNhMWJmNC5qejAMAAAA + aXVsM2d6eGouem9tDAAAAHY0MG5rZXByLmlycgwAAAB0MWIxcmQwZi56YmoMAAAAemJ2NWJncTAu + MjB2DAAAAGhkb3UwbTBpLnlvdwwAAAAzZTFzaDQxay5pbWwMAAAAZW12b3pjeG4ubGtsDAAAAGwy + cHp1MXBrLnBnbAwAAABjMWhvcXJtZi5na3EMAAAAeG1ma3R4M3Iua3g0DAAAAHB5NXR2eWFtLmRs + egwAAABkZ2l1ZXlmbS5taXMMAAAAZG5wZzN0ZGMueGhjDAAAAHV6d256Y3FhLm94egwAAAB0YXox + dm5kci5uNHAMAAAAdGFwdnB0aHIueXdzDAAAAGRwMXk1anZ0Lmc1dQwAAAA0M2V1dnFkZC51emkM + AAAAMDIwbG0xMGgud3dlDAAAAGNkM2dtbWVpLmwxZgwAAAB4ZW1tM2VkcS54enQMAAAANHV3M3d4 + dHUubnAxDAAAADNjbGtrdmQyLnJsbgwAAAB1NHRpajN4ZS5vY20MAAAANWdicTFxaHouM3dyDAAA + AGpvZXJnd3cyLm5mMgwAAAB2MnVqbXd0bi5pZngMAAAAc3lkb3hrZncuZ253DAAAAGJ1dzE0bGQ1 + LmdmcwwAAAB3M2FrbGVxdS52Z2kMAAAAY2NwaDF3ZDIueGR5DAAAADBnMG9vcW4zLnZwaQwAAABj + cmFmMGYwbC5icWQMAAAAcHBlZnVobjAuM2hmDAAAAGljemt4NHozLmhjaAwAAABncTRhY25laC5p + YW8MAAAAbWQ1cXRwbXcub3ptDAAAAG5jY3ZtZTMwLndvagwAAABpbWVyYW5yaC54aTUMAAAAb2J4 + ZXZsdXIuZjBlDAAAADVoZ3p1c3ZrLmVlYgwAAABzazA0Y215bC5keXoMAAAANHh1cXZ2M3ouaWMx + DAAAAHZveHV1b2ZxLm1jcQwAAAB0djUzc21idy5hbTAMAAAAcHU0azJ2aXYuMHJyDAAAAGtubHNv + aW1uLnZsdgwAAABlMGQ0NGo0ei53NG4MAAAAcDBoaWZ3dDEudjVtDAAAAHJoY2F6c3FzLmx2aAwA + AABheWFtY2RicS5zMHkMAAAAYnh1Z3FsbDEubTFlDAAAADB4Y3V4b2ZtLm94dgwAAAB2cXZ2bXdj + cS5sMzEMAAAAaG5mbzRwd2IucjBiDAAAAHV1eDNmaHBzLmw1MQwAAABpNWpoeWJncy5tdGkMAAAA + b3pmNXIza2Eudnh2DAAAAGR6dDR4bmNwLmJldQwAAABqNGpnNDRlYS5jM3IMAAAAYmlvajVxYXgu + NGNlDAAAAHVtdDAwcXZyLjJmbwwAAABhZXprenJwby5mZ3cMAAAAZG40ZmJxNHcuajF4DAAAAGRk + eXp2bnFkLmNtcgwAAABhbXIyZWx1Mi5yaGcMAAAAZmY0cTJiemkuc20xDAAAADU0aXZ2ancwLnFi + ZQwAAAAwMWVid2p0bi53eXkMAAAAaGJ1bWRqZGkuYmZ5DAAAAGxsdmNlMTBhLnF0ZQwAAAAxeXF6 + MXN1Yi4wb2YMAAAAa3RsbXh4ZTUucHJjDAAAAGM0NGMzemd4Lmd4dAwAAABwd3h2MnJibC4zY3gM + AAAAMjFuNWl1bm4ubzFiDAAAAHNpM2JnYmUxLm5hdAwAAAB3cXRieWkzeS5td2IMAAAAcDBrd2Nk + cGkucHphDAAAAG53dnRjcWIwLmMwYwwAAAA1eTRmbnIzZi5wZHgMAAAAeWlxdHdlenkuZjExDAAA + AHJwbnZuenpyLm40cgwAAABua3ExdXExZi53MmsMAAAAZ3cxbHBjbmYueTN2DAAAADBwbHVhbDJ1 + LmpkMgwAAAB1a2RsMzAwZC5zb3AMAAAAd2NubG92aHcuMWxiDAAAAGNwZXVjcjN6LnZ6egwAAABi + c2tqemJnYy41ajQMAAAANDNkeml5ZHYubXZpDAAAAHd5anJ5d3FrLmtycgwAAABieTF0NHVucC54 + YmsMAAAAaWloZWVmbWYudnFtDAAAADJrdWZ6eWtxLmE1MgwAAABkaG01eDFkMi50dmQMAAAAbmc0 + NGVoNDMuZzV4DAAAAGp6cGZtM21qLnJreAwAAABwcXR1bHdwMS5iYXUMAAAAYmlwaWlvemcucjBp + DAAAAGxyYzJnNHNrLnJudwwAAAA0NWhnZHhxZS5scHEMAAAAd3B4emZoZWQubDUxDAAAAHg0MTJu + and6LmJ4eQwAAABwdGZieWxjYy5tYnEMAAAAeXA0eHNuZ3guZXlvDAAAAG16NTJ5cXAwLnBkZQwA + AAByajJyZGhhei5za3QMAAAAY3pobjJzZ3Iub2J6DAAAAHFveGVweWE0LnR4MgwAAAB6bDRoZXBu + by55eTIMAAAAYWh1cHFwMHoud2NlDAAAAHltMzBuajF3LnAydAwAAAAzcDBubzNvYy5xNG4MAAAA + MGZncXVya3MuY2RhDAAAAHh3MGFxY3VyLnEycAwAAAB6a2ZzZnRveC4xYWUMAAAAbHZoZ3gyZ2wu + Z2wzDAAAAHlmcnRtamViLnhzcwwAAABoYTBqb25jeS5hNWoMAAAAc3VqNXl1NG0uMmV0DAAAAHZq + b3NnMDI0LmswdwwAAABxcGx0cXd1cS5vbWYMAAAANGZhcjBnd3ouemJsDAAAAGNibGVrY2Z6Lmxk + bQwAAABlMHF1dm5qYi5rbGYMAAAAZnp3NW12cjQuNHNqDAAAADJpbGN0MzVtLnpucQwAAABxb2Fr + Znk0dy4xeWMMAAAAZ3N2bDA1bnIuZGVvDAAAADRud2kzb3l2LnVybgwAAABheDMyZ2N1by5sanEM + AAAANG5xMnBvY2YuM2RwDAAAAHlncHNodmJ0LjNmcAwAAABrZjEwZTVqdy5iYjIMAAAAMHoxbTFj + NGoud3l0DAAAAG9waWt3aWpoLnM0egwAAABkZmhydTQway52eXEMAAAAem1zemMxcWIuZG51DAAA + AGF5NW5rMTN4LnJmdwwAAABlbDFjajBtaC5kZGYMAAAAbmNrdGh4bDIua2ZoDAAAAGtuZnoxMTVl + LmU1awwAAABoZGt3NWdnai5hZm0MAAAAczN4c2FtbHcuZG55DAAAAHUwZDFxbWRlLm9ubgwAAAAy + MnlodDV0cy40eHEMAAAAbXptMGl2ZXkudTEzDAAAAGExNG8yd3p2LmowbAwAAABwZzBuMzI0ZC5m + ejIMAAAAdGkxM2M1MW8uNXpsDAAAAHphYnYxaTVjLmJiegwAAAB0ZWh3cHJldi55bjIMAAAAenps + Z3l4YTUuNHlhDAAAADVjNTI1MGNmLmZzeQwAAAB6dGFzcms1dC5peWoMAAAAdDBuNW5uZXAudnNh + DAAAAG55dmVvc3gwLndvcAwAAABsZ3hjZHRoMC5hbWEMAAAAdGIwb3FwM2wuZXZ3DAAAAGRlY2J1 + azEzLmxwZQwAAABzZnFjNXJ3eS5uZGYMAAAAMnQ1M2p5NWEua2lqDAAAAG12Z2hqdW8xLmdpagwA + AAB4MWZodmlrby5wcnoMAAAAczM1eWVmZ3AuYXVqDAAAAG1vZ2FhYm15Lm9sbQwAAABzZGo0M2g1 + bS5iZXEMAAAAdHZyaDRuM2wua3hxDAAAAGNka3oycnd0LnUxcAwAAAB4enkwaHZvci5nMHEMAAAA + bWpscWlrc2wuYml1DAAAAHgzcWZxNTFxLnh3ZQwAAAAwemZwYWVlYy5rNTIMAAAAY2wzM2xwZWou + dGc1DAAAADUxcTRxa2duLmw1dAwAAABiNHZucjNqby41d3gMAAAAMXVmb2YxZ3UuYjJoDAAAAG1r + bTJ0a2h0LnhheQwAAAA0bWJxbjVyNC52MGsMAAAAcXZxb2NjeXkuZnlnDAAAADRqbHgwamkxLndq + cAwAAABmenlyNXlmbS5wZG8MAAAAbTVyeXI0ZG4ubGZoDAAAAGxsMXFidHF4LnRidwwAAABtbDQ0 + em90NC5yaG0MAAAAbjNqcDV2Zm8ubjV1DAAAAHh4eW91cm8wLnA0cAwAAABkY2s1MXRwdi5jcWwM + AAAAcmRvMmxxYnEueXFsDAAAAGx2cnEzb2ZjLml2dwwAAABmaHY0MDJyaS55ZWIMAAAAM2h2ZXYx + bWsucXdkDAAAAGp2bnRvZWY1LnJueQwAAABieXVzeW1kdS5wc2gMAAAAb2lib2x2cHAucGplDAAA + AGZ5NGFnMGgzLmR6ZAwAAABxZmlleHpsZy5mMngMAAAAd3V3Yno1anYucHZ6DAAAAG9qNHJoNXN4 + LmgwawwAAAA0Mm52c2k1dS4yZG8MAAAAMnZ4dTVsZGMua295DAAAAHdsbGxxdXptLmR4NQwAAAB3 + M3ZweGxyYy4yM3kMAAAAaGFpY2gza2YucmVnDAAAAHdvZGQ0b2V2LndpYgwAAAByMGFvc3FvaS5o + cmwMAAAAc3k0YnhsdnIuYm14DAAAAHJuMXU1MXd1LmhsZQwAAABqazVudm90ei5iM2QMAAAAb3Bv + Y3V3ZHUubjVwDAAAAGt2MHB2dWl3LnZidQwAAABoMjQwNXptZC5kNG0MAAAAdXl0aXZzZW8udjR3 + DAAAAHdiZ29md3phLmZxZAwAAABzcWRpcHl1dS5qcXYMAAAANG8wYmp2YWcuNTM1DAAAAGdhNHBk + c3BhLjUzYgwAAABiaXBiaTVjdi5ham4MAAAAeHhyaWEwaGMudHZmDAAAAHp2ZXVvZWN6LjRrZgwA + AAB5eWFseW50Mi50bWEMAAAAZDIxbG41NTEubjBxDAAAAGp3Z29mbGYzLnlwMAwAAAA0bWpwc3di + Yy5udGcMAAAAMnMya3Bjc2MucW16DAAAAGY0cjJmdnJ5Lnp1awwAAAA0eWhtcTVheS5uczEMAAAA + d3hmMjVlZHAuaDBzDAAAAGUyd3htMXF3Lm96egwAAAAyc2M0NXB3aS4xZXcMAAAAanEzbWp6NXcu + YTRsDAAAADJncGFua2d4LnlxegwAAABreHNtZWNycS5oeGkMAAAAMnhlMmlzM28uMXUyDAAAADRp + d3Brb3MzLnp4ZgwAAAAwbmI1Z2Nwbi5paWMMAAAAcm5tbDUwMDEuMWN5DAAAAGplcWZoZjBuLnlt + egwAAABzem9yc2tlcS54cjQMAAAAbjRiMjB4MmUud2ZvDAAAAG11ZHlyYXUyLmtnMgwAAABoMTRh + ZG51ci5uc2cMAAAAZDJnNWdkMjAucjR1DAAAADRneGNodXMxLjFvdAwAAABva2t0dnFmdC56cmsM + AAAAbDBtbXp2bTMuZGd5DAAAAGFtY3hma2J6LnZobAwAAABzMjNrYjNqYS5zbGcMAAAAZ3h4b20z + a3MueG5oDAAAAHV6bHdlbGo0LjRyagwAAAAycHRjMDJzay5jbGYMAAAANGtiZmMxemQuYXcxDAAA + ADBha2Roam5rLmF3bAwAAABsbHNiM3Z3eS5lM3gMAAAAYmp3eHp5YzQueHNwDAAAAGdpM3lsdnJo + LnRxcQwAAAAyc2l2YW5iaS5kaHEMAAAAajIxZ2M0ZTMuM2NsDAAAAGJnMjRpZHh6Lm4yZQwAAAB2 + b3pnZXJmai5yd3YMAAAAY2pyMXcxdGouazRkDAAAAGdoam5seGVjLjFuegwAAAB2dnllcGFjNC5q + NGIMAAAAYWF1dHN2YnYucWRuDAAAAHF3ZTAwYzJiLjExcQwAAABjYXh2d3AzZy55bjIMAAAAbXJp + YzF1YWQuMHJsDAAAAGp0YjVzZXF1LmF4MgwAAABzY3pyZ2xlaS5oZnUMAAAAamdseDB3aHcuZW1l + DAAAAGR4cG4xa210LmtkbgwAAABteHplZG1qaS5qcnIMAAAAa3FiajRjNWouYXp3DAAAADR0MnJh + ejFvLnlqaQwAAAB1a2Z3aTNlYy5nemQMAAAAemVjbmx6b2QubDM1DAAAAGVia2JhZDFyLnlocQwA + AAB5am1xaXlycC5ld2sMAAAAZ3ozaWVnNHAuaWQwDAAAADBlbmFvZXQ1LnVvagwAAAB2cGUzZTJw + aS5qZHAMAAAANXVsdGpweWQuc3RvDAAAAHQybmtiNHJlLmkwZwwAAAAxaHI0M2R0di4wc3EMAAAA + MXdhZ2pyencueXRxDAAAAHltY3VieWdrLnduZwwAAABibG1tMmdtei52Y2gMAAAAbXM0cm1lZjEu + aGxlDAAAAHN1eG9vanFmLmxudQwAAABnamFpb2JiMC55cmkMAAAAa3lkbWU1c28ueHRiDAAAAHEy + dTN1cmh5Lm5zeQwAAAAxeTJmbHp1dC53M2IMAAAAZnJwbHlwc24ubWFpDAAAADJsbm1hdzRwLnJn + egwAAABzeXRkd2J2aS5jd3oMAAAAeWc1ZTJmemYuZjFoDAAAAGZpYjVnaGZrLndlMAwAAABjMmJ1 + MTF6eC5jY2UMAAAAYnc1aW1pYjUuMDJ3DAAAAHRhZTBmb2x5LmxlcAwAAABnamExM254eS41aGUM + AAAAengzbWt0bzQuNXV5DAAAAGVrend6bTMyLnNicwwAAABnZzB6MXh2Yi5mNG0MAAAAczIwNDVk + aDQudGJqDAAAADUwcmdoYmhiLnBzZgwAAAB5ajAxcHAzdS4za2oMAAAAcjFzaHdtYm8uYm9rDAAA + ADQxYWQxdWFlLmRhdQwAAABkZmJ2MDJ1ei4xZTUMAAAAenQyMGs1ZGwubzFqDAAAAGV3Y2Npemp6 + LnZ6YgwAAABzZDF5cTU1Yy41M2cMAAAAaDBpaGZmd2MuY3BvDAAAAHV1NDBraDBkLjR5ZwwAAABk + am4yZXczMC5lbmIMAAAAc3UwemdtaG0uaHkzDAAAADRhaXRtd2psLnpyYgwAAABzYng1Zmlwbi40 + cHQMAAAAY2NjeGlicG0ud2JiDAAAADBieHVxeDJuLmEzMAwAAAB4ZWxqcGx5dC55dWUMAAAAcXQ0 + bTJnYXoueXlmDAAAADN4aWJpY3R4LmJ1ZAwAAABnb3BhMWY0cC5icnAMAAAAcG9oc2pmMDIuaGUy + DAAAAGFmYm1peXU0Lnl6bwwAAAAwbXJsZWdreC5wa2gMAAAAeW5sempseGwubmR2DAAAAGZ0eWNt + MTJrLmJkdAwAAABzMWVpa3hvdy5qZTIMAAAAaG9sYjNjZmkuYW9iDAAAAHp4dDNhc3IxLm40agwA + AAB0ZnMxZmxrMy51ZGwMAAAAZTJ6ZWZkYzQuNHRvDAAAAHFhdXI1cTFvLmthdQwAAABoNHRjMjVx + Mi5yNWoMAAAAajBibmhleG8uYWp0DAAAAHF0cm1rNXV0LjRpMwwAAABrZ2NuZnI0eC5oaGkMAAAA + MHRweTNjdnQuaDNiDAAAAHlrMHBicGkzLmxycgwAAABkand1ZGkyaS5rdW8MAAAAaDRxamo1aWQu + NGZtDAAAAGxyNDB0amIwLm8ycwwAAAB5emxjdTB5bi5pd2UMAAAAMHZlcDViZDUuZ2ZrDAAAAHht + enhibnJnLmY1egwAAAB6bnFxbWp3dy52aHMMAAAAYmhycmx4YnUucHkwDAAAAGJvcHplMTNvLmxh + agwAAABzNGJ4ejBndy51bTMMAAAAMmgyb3J6ZHAudnUzDAAAAGpkZGs1bWZ1Lm9hawwAAABhdHEx + anlseC55cXkMAAAAMGV5Y3hmd2wuaWY1DAAAADBnMmpqbXZnLnUyaQwAAABlMGJtdXJ5bi5sZnMM + AAAAaWRmazE0aTUueG5tDAAAAGVzMndic3RzLmxmdgwAAABycXVyb3V1aS54eGEMAAAAdGNxMXJj + ejIucXhtDAAAAGRoeXRzdXhlLjU1egwAAAByMGNzeWxodC5samYMAAAAandndzNmM2MuaWZiDAAA + AHptcGVvbHkzLjR0MwwAAAB6aXdtNHRtbS5yd2oMAAAAeXhrdnhneTEud3RhDAAAAHM0emF4cWE1 + LnpvcwwAAAB4cW5icmkwdC5tbnEMAAAAMmV2M2MzZ3AuZHpmDAAAAHBxNXZiem9wLmh3agwAAABj + M3Qzd3IzMy5qY3gMAAAANXhqa2YxenMudTF2DAAAAGtkbXVvYzNrLmhodAwAAABhZ2RkY3V2bC5l + bnoMAAAAMnZseXYyYzUucWp1DAAAADV2c29rY2I0LnBocgwAAABiZmZnNWZmby40dGQMAAAAa2th + Y25xdHkuMnptDAAAAHcxdGs0cjUxLjBkNAwAAABudG5sbmJ4bi51c2sMAAAAcHQya3pobGsucTRw + DAAAAHd1cmcyb2IzLjVjMwwAAAA1cXA0MmdvaS50cGMMAAAAdGQ1dnBla3EuM2p0DAAAAHdwd20z + Y24xLmNqegwAAABtYWZhdnRkYi56cXUMAAAAcWZuams0a28ucXpkDAAAAGRja2wxdTN3LmtwYQwA + AAAxc3Jha291MS5rMG8MAAAAYWRrazQwdXYuaXhkDAAAAG5uMXE0MGxvLnYzYgwAAABpY2JnbWF3 + by5hdnEMAAAAYTRkMWZleTIuNXNvDAAAAGcxejVzMWJ4LndwYQwAAAAwZWt1djU1Mi5mczAMAAAA + aWcxNTFwZngua29tDAAAAHZ6cGJocDBnLnBxZAwAAABmMDV3dmUzby5xZDQMAAAAMWV6dWt0cXIu + dmZvDAAAAHpxbXB1aTRtLjNqMwwAAABjNXFkaXBpMy55cGsMAAAAbnhvZXhvbG4udHFtDAAAAG8w + azQxcTFtLmwydgwAAAA1Ymp5dzRibi4xNDIMAAAAZjNkZGRwaXIuM3Z5DAAAAGpnbzR6YWhsLnZp + NAwAAAA0ZGMzcnNteC4zMHEMAAAAZGNxMGozNGEuY2dqDAAAAHBhNWRsa3NzLmNxcAwAAABobGhh + ZXFsMy5zMG4MAAAAZHlweWJ0cWQuMTBpDAAAAG50NDBmZ3JqLmRqeQwAAAAzZ3V1emJubC4yMnIM + AAAAd2Qyc29zcHcuMWVpDAAAADRnNWxhc2liLmVyMQwAAAB6aGtlYmxkcC5xbW0MAAAANHl3cGRx + MWguZHpuDAAAAGpjMmJ4aHRuLmw1cgwAAAB6djJqZG93cS5reW4MAAAAM2N0cXZncnkuMTFvDAAA + ADMyMjV2cXpoLms0YwwAAABrb2gxMGMxMC5mbWEMAAAAemlieGR1ZXcuNXJjDAAAAHZ6cTFtYmFy + LjEyZgwAAAB5cnBucDJnZy5pNGsMAAAAY3N0MGl4cXUudmNnDAAAAG5veXkzY3p6LmwybwwAAABv + dmdvaWs1cS54c3MMAAAAaW5xcHhxMHoueWdpDAAAAGJ0ZGtnazBrLnZxcQwAAABjazFzbXlnei5x + b3UMAAAAeXBicndkd3YubWFiDAAAAGlmYml0ejJ1LmpvMAwAAAB5YXcwMjUxMi5xY2UMAAAAYWZ1 + cTNzb3IubGRiDAAAAHFyeXJhMWFsLjJwdQwAAAAzZ3cwdGtrdy5sNWEMAAAAdXF2eGJ6NGMuenhm + DAAAAGZ4cTVmZHplLnJ1bwwAAAB6aTRvZGpvNS52Z2IMAAAAaXJpdmN5c20ubjVpDAAAAG15NHlw + cmVoLnVueAwAAAB5c2ZocWpqdS4xa2UMAAAAMmQwazA0MHkuM2kwDAAAAHk1NWhud29kLnp4dQwA + AABsNXV2YTNoaC5oNHAMAAAAcDVoYXZ2bmMubHo1DAAAAHhraHpzdmZsLjB4dwwAAAA1dDN3cjFh + aC5hdW4MAAAAaHdwMDRjZnUubWFjDAAAAHJvNHkwMXc1LmowawwAAABrdXozYmN0ai40dG0MAAAA + cnR3c2prd3MubzF3DAAAADNjeXN0cGtuLnZ2YwwAAAAyZWR5M2hrcS56cmsMAAAAczN1emNqeTUu + eGF0DAAAADM1ZmNndWpwLjNsdAwAAAAybmEzbXpmei5mY3oMAAAANXllcWphYXouMjBvDAAAADBn + a29pNHZwLmI1dwwAAAAyZHliZWN2NC5iYWUMAAAAaWQxbno1YTUua3d5DAAAAGZzc3ExM3FvLm9y + ZgwAAAAxeGJxMjBudi5oM2YMAAAAazRsZ3F4aTAuZjN4DAAAAGgxYTR3MWZoLmRmbQwAAABqYTB0 + eDFiay53MDAMAAAAbDVmZnhkYnkuMHVhDAAAADJzZTRhZ3B4Lmc1bAwAAABnbmdzY2l3MS53MGsM + AAAAMWZ0bXhrYzMubGF0DAAAAHNzbWF0b3JiLmJtbAwAAABseHlkajNidS4wYm0MAAAAaGwwaWkx + c2suMHAzDAAAAGJhbnJ4MWwxLmJ2bgwAAABwcnppcGd0eS51MXQMAAAANWFhNWwwcG8ucmUzDAAA + AHQzM2VjeHI0LmJpaQwAAABpbHh6MTRoMC5ycXAMAAAAdWFxMmx1MGsuemF2DAAAAGl6eTM1ZGZi + LnluZgwAAABvMjJjYmV2bS5jbGIMAAAAcGxsNGhjaXYuZHNnDAAAAHRidWl3c3RuLjJneAwAAABn + M3dnMmJ0aS4yd2MMAAAAMWNvNWY1MXIuMjRnDAAAAHNnZG56cXhkLjBqbgwAAAByenh6MTMzei55 + bW4MAAAAMm95ZWVpajEuMXVsDAAAAHVmYnZ2MTRjLjBhNQwAAABhYWJnY2VtaC5iZm4MAAAAMXd1 + eGJhZncubHp6DAAAADFwdDEyZGxxLmxzdQwAAAAybjJ2d2U0bi51ajAMAAAAdTFnZ3YzdzAuaHkz + DAAAAGlua2kxbXB3LmhkMgwAAABrc3V5bWx6by5reHgMAAAAbWt4enR0cWMubXR5DAAAADNiNGI1 + czR0Lnd2bwwAAAB5enVoaGdwNS5oZnQMAAAAbjNneWM0cTUuZzMwDAAAAGVndW9ldHg0LmNtMAwA + AABta2JobmJyZS51djUMAAAAeWt5eHYwbjQuc3NmDAAAAGw0bmhhYWFsLnFnbQwAAAB6b3hlMGVn + ZC50MXkMAAAAZnZhbXQycWouMWVlDAAAAG16Y2J2b2ljLnE0cwwAAABoMmtrZGdsbi5vemYMAAAA + YnpkbGhhMTEuczJyDAAAADVjMWZxb2RmLnBxcwwAAABkanRxcXN1aS55MnYMAAAAYXVpdG13NWEu + emZtDAAAAG9kdzEwZ3RsLmFxNAwAAAB4cHJkdDFwcS52NW0MAAAAbG1qcWtycXYuYjFuDAAAAHBh + Y21pcjJnLnBkNAwAAABvbGdoM2F3Zi5qanAMAAAAeXF6bG9uMHQucnMwDAAAAHh6eHNpeGdvLnVo + cAwAAAB0emt1bG5jaS5ndGcMAAAAd2tlamFwMHkuemZlDAAAAGwzYnQzb2UwLmxnbAwAAAB6YnVo + YmNlci40d2QMAAAAMnFwcDNub2QuZmNnDAAAAHZ4M3IydHZ2Lnl1MAwAAAB6NHVidnQxby5xYWkM + AAAAemNlc2JuZW4uM3ZyDAAAADV5Znh2ZHV1LmhtbwwAAABvbXdjajFoNS5zbnIMAAAAaTJuaG9r + ZGEuM21zDAAAAHc1aGxwYXg1Lms1ZQwAAAB2NHAzcHQ0Zy52Z2oMAAAAMzMwNXFtZGguZngzDAAA + AHNycjV2a2liLjN0NQwAAAB2cHJ0Z3N6ai4yYWkMAAAAY2dva3pqc2EuYWdwDAAAAGk0MGFzeDN4 + LjAybQwAAABnMGgxZ3d5aC4yNDAMAAAAZWIwczBoaGYucjByDAAAAHlscnFua21nLndyZwwAAAA0 + c3Ayd3J2My40bzIMAAAAcXE1Z2ZyZ2YuZTRkDAAAAHprMjF4aHRxLnM1bwwAAAA0aWh3NXEzcC5z + MDQMAAAAZmRxdmdmNG8udGxsDAAAAGYxdnlnbmQzLnF3MwwAAAB4bGN6cWV0Mi5maXoMAAAAamVp + NXl0NGEuNHVhDAAAAHJmNGtiZmdmLndxegwAAAB4bnNoYWJ0aS5oYnQMAAAAenhwcnN4cnkuaGJ6 + DAAAADFnYWI1dW1kLnN5ZAwAAABvdm1uem01MS5sNXYMAAAAd3BlZGF0NWcub2thDAAAAGp4YjV3 + aDU0LjVnZAwAAAAxYTIyZXBjcS4xMnoMAAAAM2VucDFsaHYueDVhDAAAAGRtd29ocGdpLnJuYgwA + AABqdmZ1MGRwMC4weXUMAAAAZmt6aHVwcjIudGx1DAAAAGN6Z2l3emV4LmRqYgwAAABxcGptM201 + ei56dmIMAAAAMHd1d2VobW4ubW9hDAAAAHkxZ3FtajEzLnFkZAwAAABoc2pwYWlkdS40eWwMAAAA + aG52cHdyMWUuaTRrDAAAAHNtdG1yZHlmLnYwawwAAABrdXBlb3hqbi5mMzAMAAAAZW9ucGNubngu + YmIzDAAAAGRvdmh5MXd4LmhlYgwAAAAydHRuMXRjby5nZmgMAAAAMmhkbzQ0bjAucmRiDAAAAGVp + ZTF1dmJtLmxkZgwAAABqenBldXduay4wZjQMAAAAZDIxZjVjenYudWN4DAAAAHB5aWZmaTRxLnlx + NAwAAABtZXNsNXRldy40dmYMAAAAc3ZyMDFjcHEudWduDAAAAGpvemx1Mmp4LnJnZwwAAAB4cGho + ZWEycy5rbG0MAAAAbnJ3cTVtNWkuMmx5DAAAAGlqZ3Nnc3Q0LjBmbwwAAAA0dWdmbHVmei5xdGUM + AAAAeHkxZG4xMWkucDBsDAAAAGR0dHdvY2R1LjNuNAwAAABxYW9xMGdhaS5uMW0MAAAAbHNncnB3 + bXcuemsxDAAAAGUxMHhwb2JxLmZnbwwAAAAzbGMydGo0aC5lemIMAAAAa3d3azBydjUuMm8xDAAA + AHAya3ZhZGNpLmpkYgwAAAB4cmR2bW5sbi52MXcMAAAAYXowYm51bG4ua3drDAAAAGNtaXF5NHZq + LmFlMwwAAAAxbmNmMmEwbC5sMXQMAAAAMzVhM2ZmcmIuZmFnDAAAAGh4bHJpZDIwLmNhbQwAAABh + czNwcHNmdS5xd2IMAAAAdjBpMXZ6ZXguZXduDAAAAHczcHNqZ21iLnYxZwwAAAB4angyNG9uZy56 + bGYMAAAAM3RnbzFnZnAuYnIxDAAAAGkxaDJ1b2hqLmt3NQwAAAB4ZGp6YWIway53eXEMAAAAZGph + MnowMjEuNTJpDAAAAHBxdHpocmNkLm93cgwAAABobXZkaXdndy4wb2cMAAAAM2d5aGd0YzMuanBk + DAAAAHgxYWxnZGVuLnd0dgwAAABqYjBrcGhneC51MHgMAAAAa2kxMjRpdmQuMHhqDAAAAHkxYnpy + b3p1LmZqaQwAAABtM20xZGIzdi5ka2IMAAAAZDAzbHB2cWYuaHl3DAAAAHdvcmZyZnhuLjJ0agwA + AABjMnJxemk0bC5kdXIMAAAAMjNoMmtraHEuc2h6DAAAAGxjeXl3Y2ZrLmZjegwAAABleWQ0M2Ny + Yy41d2kMAAAAMmhycWdzM28uamkyDAAAADJ0eTR1a2tsLjVjcwwAAAB3aHJnbmQ1Yi5lYTAMAAAA + amcxa2J2Y2cuYXR2DAAAADFqcWFyemhiLmNyYgwAAAAwdWhkbWY0NS5meW4MAAAAamIzYW9tMm8u + MGhtDAAAAHR1cnppcTRvLmpibgwAAAB5c2d0dHN4aS5ucHcMAAAAcDN0eHVtcXIubWFzDAAAAHZq + emVlanEzLmsydwwAAABmcG01bmdrcy52eDAMAAAAbXBzMXRtcXguM3VvDAAAADVoajFsajJkLnp5 + cAwAAABtMXhnb3oyay50Z3IMAAAAZHNpcXpvdGgucnFqDAAAAHFxb3B5d3R5LmhoaQwAAABjaXVs + YWtzdC5wdXEMAAAAeWdvNGJ1MmsuMnVnDAAAAGZtY2ticm5vLnIxYgwAAABobGhhaDRuby5wcncM + AAAAZGI1dm92cGoudXFzDAAAADM1MnpoM3h5LjJhYgwAAAAzY3poa3VvMC5penMMAAAAM2Yxanlj + ZzMuajB2DAAAAGtiZHIwdzR1LmdtdAwAAAB6eDNhNHZsYS51c2sMAAAAc2J1ZmZibjQubzRwDAAA + ADJjMGZ2c2UzLmt2eQwAAABwZWN4MzNjMS56MDQMAAAAa21zYjFrNDIuNXBqDAAAAGNwM3ZianZ0 + LnU1egwAAAAwbDRkbWhxdC40eG4MAAAAYWwzM2piY2MuZ3hrDAAAADNxaXBqeHYxLnhhMAwAAABl + aTVjZ3BiMi5qdWEMAAAAZTVvdWNnd2subW1mDAAAAGVqZmpzMGhzLm1jbAwAAAAzaXhuZWt4bS54 + d28MAAAAdGRybWdoenoudGNiDAAAAHU0dzFldjNnLnJ5ZAwAAAByY3Bta3p3ai5lcXcMAAAANWVr + bG41MHcuNXM0DAAAAHh4NWx6djBtLnV3bQwAAAAwMTFjcWFuNC55enMMAAAAa25iY3JwYmwuZmx6 + DAAAADUzbXo1d2dvLnVsbQwAAAB6eTByMGxzci5zMjIMAAAAYWhudGJ4ajQuYmJtDAAAADQybDF3 + MnlhLmJzawwAAAB6bzAxNW01aS50enQMAAAAYmF2YWZndTIucTNlDAAAAGdzaHljcXFmLjFpZAwA + AAA1YjAzNXN5ZC4ybGcMAAAAbHlpZnkwaG4uenh3DAAAAGV0YXBwbGdqLmczYQwAAABtNGp0dXFh + di52ZWwMAAAAcWRvb2t5eHYucnF3DAAAAG9qeGI0YWhsLnZjMAwAAAA0eWNqeXd6ai54aWQMAAAA + c3ZqdW1uNXguNW9rDAAAADJ4amZsMmZhLm9icgwAAABjd2Z0aHBqdC5hcXMMAAAAdGM1M2JxeHMu + eDRjDAAAAHl4amRnYnYwLm9saAwAAABpcW5tNWh0ZS4wd2IMAAAAbGcxeXprNHEuNWpkDAAAADUy + dG92MmJ6LjVkaAwAAABrYzNxMWtjMS5qeXkMAAAAZ3NoeHYzeTEuNXR6DAAAAGpydWtvMGNxLnJn + YwwAAABlamFydmxmaS41cDUMAAAAeXgwdGpzeWEudGlvDAAAAGd1MGJ5NGJvLm4weAwAAABrejVr + aDB6Yy53MGQMAAAAejNwZm5heHIuaWF6DAAAAHR5ZWI1YnFqLjN4NQwAAAByd3RzbmJuci56dGEM + AAAANXB0dDV5MzQuNWhiDAAAAGhwZmVwMHFyLmFrYwwAAABiaW5rMHlyYy5qd28MAAAAcG1lenBz + amwuamQzDAAAADAzbGVnZHRvLmx5eQwAAABiMzNkYWk0My5xZXgMAAAAZGxudHFnbzMubm5xDAAA + AGJnaGJoa2VlLnRpcwwAAAByazBxM3Btay5jNDAMAAAAdnFjYXIxMnUua3pwDAAAADVid2FvZmJu + LnVwZwwAAABiZzJremkwZS53cGkMAAAAZTU0enhjZnMubHR5DAAAAGVtMDVzMnBpLm90MQwAAABv + YjFwMzUxbi54bWwMAAAAMGh1a3R4d2wuamV0DAAAAGtiaDF6dWxpLnA0MgwAAAB6b2NrZWtiYy5r + azAMAAAAd2pwYTFjMnIudmpxDAAAAHVkbmFrMXlhLjJscQwAAABub3BsenF1Zy5mY3cMAAAAZWdh + ZGJpd2EuZnN0DAAAAGJ2cmdkM2tjLmZmYgwAAABybnhrY2xnMy5lcmEMAAAAZGhmeGtoMmwud2wx + DAAAAGFyZHBqbDNoLmJvYwwAAAB3a2gzdWZ4eC55cGoMAAAAeXF5YmJoc2IucHVpDAAAAHRtem41 + cXlzLnpwcwwAAABhNGVjZ3ZiYi51cGsMAAAAem5wMmd6MmoubGwwDAAAAHJwMHJhcHhuLml6cwwA + AAA0dHp0ZWRtbC54ZXcMAAAAbXEwc2Zqem0uMGVyDAAAAGN5Mmx3b24xLnczdwwAAAAxbHV1cm5x + Yi5qcGUMAAAAc2g1dmdrM3AuaHRqDAAAAHRlMHduYm8yLmJwcgwAAABteTB1czE1NC51b24MAAAA + NWhmZ2NyanYuanJjDAAAAGlmbGxpMHl3LjNkegwAAAA1eWJkamdnaC5nZHEMAAAAY2dqaWFvejUu + bHlpDAAAAHJ6aXc1MnViLmM0ZQwAAAByNG1xMGlzZC4xbWMMAAAAeGJlcW5md2UuNG8xDAAAAHVw + dTF3aXN4LnhvaQwAAABoaGd4ZHk0cS5qYnYMAAAAcXYzYjBqb3AubWFhDAAAAGR3NGQxZ2hjLjRj + MQwAAAB0cHNrdnJyMS5iczAMAAAAb3h0Z2N1M2EuZ2gxDAAAADNvamFlaGJ4Lm9rdAwAAAA1dGF0 + ZmZwby50ZjQMAAAAdHM1c2N5c2gudnZwDAAAAHZncGE0amJrLnRrMgwAAABoamN3c2RvMi5waHEM + AAAAenZjMTMwZ3UuYjBpDAAAAHI0MWdrb2pjLnV3ZwwAAABnaHUwazByai40c24MAAAAZnoxM294 + NGgubWxqDAAAAHMyZ2JjNXBqLnF0NQwAAAAycHJmb3Joai5mYjEMAAAAdm1icm1ucWIubGIzDAAA + AG1paHd2NWxhLmFmZwwAAABkdGhuZTRubC5saWsMAAAAdHh0dmZpdHcubnN2DAAAAGtiZHR5bjBs + LjFhaAwAAABzYmhia3Zhcy5qMm8MAAAAMHJzcDRtZmouZXU1DAAAAHpxeXVzZTV3LmY1NQwAAABr + Z2dwZzVzZS5nYWgMAAAAbTRjaTV4ZXoubGxhDAAAADEycTFkenBxLmEwdAwAAABuY3lyMnFzcy41 + YTAMAAAAc2Zka2VsbW0ub3RyDAAAADRiZWdsMmZtLnh4NQwAAABzdnBscXhoNS5lbHcMAAAAZ3hh + b2FhbzUuZjJ4DAAAAG40c3JkZmt6LjQ0dgwAAABicHR2Mm5qbS50amwMAAAAY2FoZTBidGouYTBz + DAAAAGFkMGQ1dHJoLm0xdgwAAAB6dWswMW9hMy51M3gMAAAAcXoxdm90c2kudXg1DAAAAGl2Yndu + MjAxLnIzNQwAAABveW5xaHd2YS5ldGIMAAAAdHAzaG56b3AuZjVlDAAAAGpxcjJwbHhqLmVldAwA + AABnY2FvZG1iYS56M3MMAAAAandxejBkaGEueGF1DAAAAGt2MG5oMmZuLnZpYgwAAAAxNGMzanEw + dS5peW0MAAAAM212NGw0NTEuaGFsDAAAAGVxbXpoMXgwLjJuawwAAABzbGZub2xndy5jMHgMAAAA + dTNmZjVkdmIuZHozDAAAADVwNWZlMm9pLnN6cwwAAAAybmF5ajFwdS5pZG8MAAAAZDAycmZiM24u + djBhDAAAAGx3eW40d29jLmQyZwwAAAAycjR6bHRubS5qMWoMAAAAMWlyYnltMnQudXdpDAAAADBh + eHpqbTRwLjJycQwAAABibXR1eTBsaS4yZ2UVAhlMSBVwYXJxdWV0LWRvdG5ldC1zY2hlbWEVBgAV + DCUCGAJpZCUAABUMJQIYB3N0cmluZzElAAAVDCUCGAdzdHJpbmcyJQAAFqAfGSwZPCYIHBUMGTUG + CAAZGAJpZBUAFtAPFrhsFrhsJgg8GAM5OTkYATAWABbQDxgDOTk5GAEwAAAAJsBsHBUMGTUGCAAZ + GAdzdHJpbmcxFQAW0A8WuPsBFrj7ASbAbDwYDHp6cTBrZnk0LnZibhgMMDF3d3llNGcucGZzFgAW + 0A8YDHp6cTBrZnk0LnZibhgMMDF3d3llNGcucGZzAAAAJvjnAhwVDBk1BggAGRgHc3RyaW5nMhUA + FtAPFrj7ARa4+wEm+OcCPBgMenpxMGtmeTQudmJuGAwwMXd3eWU0Zy5wZnMWABbQDxgMenpxMGtm + eTQudmJuGAwwMXd3eWU0Zy5wZnMAAAAWqOMEFtAPABk8JrDjBBwVDBk1BggAGRgCaWQVABbQDxb0 + fRb0fSaw4wQ8GAQxOTk5GAQxMDAwFgAW0A8YBDE5OTkYBDEwMDAAAAAmpOEFHBUMGTUGCAAZGAdz + dHJpbmcxFQAW0A8WuPsBFrj7ASak4QU8GAx6emxneXhhNS40eWEYDDAxMWNxYW40Lnl6cxYAFtAP + GAx6emxneXhhNS40eWEYDDAxMWNxYW40Lnl6cwAAACbc3AccFQwZNQYIABkYB3N0cmluZzIVABbQ + Dxa4+wEWuPsBJtzcBzwYDHp6bGd5eGE1LjR5YRgMMDExY3FhbjQueXpzFgAW0A8YDHp6bGd5eGE1 + LjR5YRgMMDExY3FhbjQueXpzAAAAFuT0BBbQDwAoTFBhcnF1ZXQuTmV0IHZlcnNpb24gMy41LjMg + KGJ1aWxkICcwNTc0NTFiMzc2ZmE3ZDM1ODFmMmQxODAxZmIwOTY1YWZiZWFhMGMyJykAxQIAAFBB + UjE= + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '80087' + Content-Type: + - application/json + User-Agent: + - azsdk-python-storage-dfs/12.4.0b1 Python/3.8.5 (Windows-10-10.0.19041-SP0) + x-ms-client-request-id: + - 66b6659e-996d-11eb-9ac2-c8348e5fffbf + x-ms-date: + - Fri, 09 Apr 2021 19:54:31 GMT + x-ms-version: + - '2020-06-12' + method: PATCH + uri: https://storagename.dfs.core.windows.net/utqqcontainercdb31860/csvfilecdb31860?action=append&position=0 + response: + body: + string: '' + headers: + Content-Length: + - '0' + Date: + - Fri, 09 Apr 2021 19:54:31 GMT + Server: + - Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0 + x-ms-request-id: + - 1b04ce31-501f-000b-7d7a-2dd77b000000 + x-ms-request-server-encrypted: + - 'true' + x-ms-version: + - '2020-06-12' + status: + code: 202 + message: Accepted +- request: + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '0' + If-Match: + - '"0x8D8FB914AE5DEAD"' + User-Agent: + - azsdk-python-storage-dfs/12.4.0b1 Python/3.8.5 (Windows-10-10.0.19041-SP0) + x-ms-client-request-id: + - 66dabc17-996d-11eb-bb26-c8348e5fffbf + x-ms-date: + - Fri, 09 Apr 2021 19:54:32 GMT + x-ms-version: + - '2020-06-12' + method: PATCH + uri: https://storagename.dfs.core.windows.net/utqqcontainercdb31860/csvfilecdb31860?action=flush&position=80087&close=true + response: + body: + string: '' + headers: + Content-Length: + - '0' + Date: + - Fri, 09 Apr 2021 19:54:31 GMT + ETag: + - '"0x8D8FB914B1C8907"' + Last-Modified: + - Fri, 09 Apr 2021 19:54:32 GMT + Server: + - Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0 + x-ms-request-id: + - 1b04ce32-501f-000b-7e7a-2dd77b000000 + x-ms-request-server-encrypted: + - 'false' + x-ms-version: + - '2020-06-12' + status: + code: 200 + message: OK +version: 1 diff --git a/sdk/storage/azure-storage-file-datalake/tests/test_datalake_service_client.py b/sdk/storage/azure-storage-file-datalake/tests/test_datalake_service_client.py index 32e1f00ba6a8..472a6d62605b 100644 --- a/sdk/storage/azure-storage-file-datalake/tests/test_datalake_service_client.py +++ b/sdk/storage/azure-storage-file-datalake/tests/test_datalake_service_client.py @@ -263,7 +263,8 @@ def test_set_logging(self): @record def test_set_hour_metrics(self): - hour_metrics = Metrics(enabled=True, include_apis=True, retention_policy=RetentionPolicy(enabled=True, days=5)) + hour_metrics = Metrics( + include_apis=False, enabled=True, retention_policy=RetentionPolicy(enabled=True, days=5)) # Act self.dsc.set_service_properties(hour_metrics=hour_metrics) diff --git a/sdk/storage/azure-storage-file-datalake/tests/test_datalake_service_client_async.py b/sdk/storage/azure-storage-file-datalake/tests/test_datalake_service_client_async.py index ed9b9c2c8e3b..4246f3e85e7d 100644 --- a/sdk/storage/azure-storage-file-datalake/tests/test_datalake_service_client_async.py +++ b/sdk/storage/azure-storage-file-datalake/tests/test_datalake_service_client_async.py @@ -300,7 +300,8 @@ def test_set_logging(self): loop.run_until_complete(self._test_set_logging()) async def _test_set_hour_metrics(self): - hour_metrics = Metrics(enabled=True, include_apis=True, retention_policy=RetentionPolicy(enabled=True, days=5)) + hour_metrics = Metrics( + include_apis=False, enabled=True, retention_policy=RetentionPolicy(enabled=True, days=5)) # Act await self.dsc.set_service_properties(hour_metrics=hour_metrics) diff --git a/sdk/storage/azure-storage-file-datalake/tests/test_file_system.py b/sdk/storage/azure-storage-file-datalake/tests/test_file_system.py index b7f26dace2ab..fd305b6e4f41 100644 --- a/sdk/storage/azure-storage-file-datalake/tests/test_file_system.py +++ b/sdk/storage/azure-storage-file-datalake/tests/test_file_system.py @@ -417,8 +417,8 @@ def test_get_deleted_paths(self): dir2.delete_directory() file_in_dir3.delete_file() file_in_subdir.delete_file() - deleted_paths = list(file_system.get_deleted_paths()) - dir3_paths = list(file_system.get_deleted_paths(name_starts_with="dir3/")) + deleted_paths = list(file_system.list_deleted_paths()) + dir3_paths = list(file_system.list_deleted_paths(path_prefix="dir3/")) # Assert self.assertEqual(len(deleted_paths), 6) @@ -428,10 +428,10 @@ def test_get_deleted_paths(self): self.assertEqual(dir3_paths[0].name, 'dir3/file_in_dir3') self.assertEqual(dir3_paths[1].name, 'dir3/subdir/file_in_subdir') - paths_generator1 = file_system.get_deleted_paths(max_results=2).by_page() + paths_generator1 = file_system.list_deleted_paths(max_results=2).by_page() paths1 = list(next(paths_generator1)) - paths_generator2 = file_system.get_deleted_paths(max_results=4).by_page( + paths_generator2 = file_system.list_deleted_paths(max_results=4).by_page( continuation_token=paths_generator1.continuation_token) paths2 = list(next(paths_generator2)) diff --git a/sdk/storage/azure-storage-file-datalake/tests/test_file_system_async.py b/sdk/storage/azure-storage-file-datalake/tests/test_file_system_async.py index 937e05e4c5ab..b65a9a865be8 100644 --- a/sdk/storage/azure-storage-file-datalake/tests/test_file_system_async.py +++ b/sdk/storage/azure-storage-file-datalake/tests/test_file_system_async.py @@ -654,10 +654,10 @@ async def _test_get_deleted_paths(self): await file_in_dir3.delete_file() await file_in_subdir.delete_file() deleted_paths = [] - async for path in file_system.get_deleted_paths(): + async for path in file_system.list_deleted_paths(): deleted_paths.append(path) dir3_paths = [] - async for path in file_system.get_deleted_paths(name_starts_with="dir3/"): + async for path in file_system.list_deleted_paths(path_prefix="dir3/"): dir3_paths.append(path) # Assert @@ -668,12 +668,12 @@ async def _test_get_deleted_paths(self): self.assertEqual(dir3_paths[0].name, 'dir3/file_in_dir3') self.assertEqual(dir3_paths[1].name, 'dir3/subdir/file_in_subdir') - paths_generator1 = file_system.get_deleted_paths(max_results=2).by_page() + paths_generator1 = file_system.list_deleted_paths(max_results=2).by_page() paths1 = [] async for path in await paths_generator1.__anext__(): paths1.append(path) - paths_generator2 = file_system.get_deleted_paths(max_results=4) \ + paths_generator2 = file_system.list_deleted_paths(max_results=4) \ .by_page(continuation_token=paths_generator1.continuation_token) paths2 = [] async for path in await paths_generator2.__anext__(): diff --git a/sdk/storage/azure-storage-file-datalake/tests/test_quick_query.py b/sdk/storage/azure-storage-file-datalake/tests/test_quick_query.py index 0aae5aca4ad5..0668835b1cc5 100644 --- a/sdk/storage/azure-storage-file-datalake/tests/test_quick_query.py +++ b/sdk/storage/azure-storage-file-datalake/tests/test_quick_query.py @@ -6,6 +6,7 @@ # license information. # -------------------------------------------------------------------------- import base64 +import os import pytest @@ -22,6 +23,7 @@ ) # ------------------------------------------------------------------------------ from azure.storage.filedatalake import DataLakeServiceClient +from azure.storage.filedatalake import QuickQueryDialect CSV_DATA = b'Service,Package,Version,RepoPath,MissingDocs\r\nApp Configuration,' \ b'azure-data-appconfiguration,1,appconfiguration,FALSE\r\nEvent Hubs' \ @@ -845,4 +847,45 @@ def on_error(error): on_error=on_error, file_format=input_format) + @record + def test_quick_query_input_in_parquet_format(self): + # Arrange + file_name = self._get_file_reference() + file_client = self.dsc.get_file_client(self.filesystem_name, file_name) + errors = [] + + def on_error(error): + errors.append(error) + expression = "select * from blobstorage where id < 1;" + expected_data = b"0,mdifjt55.ea3,mdifjt55.ea3\n" + + parquet_path = "parquet.parquet" + with open(parquet_path, "rb") as parquet_data: + file_client.upload_data(parquet_data, overwrite=True) + + reader = file_client.query_file(expression, file_format=QuickQueryDialect.ParquetDialect, on_error=on_error) + real_data = reader.readall() + + self.assertEqual(real_data, expected_data) + + @record + def test_quick_query_output_in_parquet_format(self): + # Arrange + file_name = self._get_file_reference() + file_client = self.dsc.get_file_client(self.filesystem_name, file_name) + errors = [] + + def on_error(error): + errors.append(error) + + expression = "SELECT * from BlobStorage" + parquet_path = "parquet.parquet" + with open(parquet_path, "rb") as parquet_data: + file_client.upload_data(parquet_data, overwrite=True) + + with self.assertRaises(ValueError): + file_client.query_file( + expression, file_format=QuickQueryDialect.ParquetDialect, + output_format=QuickQueryDialect.ParquetDialect, on_error=on_error) + # ------------------------------------------------------------------------------ diff --git a/sdk/storage/azure-storage-file-share/CHANGELOG.md b/sdk/storage/azure-storage-file-share/CHANGELOG.md index a43c5bfdc1c0..a7c701c865aa 100644 --- a/sdk/storage/azure-storage-file-share/CHANGELOG.md +++ b/sdk/storage/azure-storage-file-share/CHANGELOG.md @@ -1,6 +1,6 @@ # Release History -## 12.4.2 (Unreleased) +## 12.5.0b1 (Unreleased) ## 12.4.1 (2021-01-20) diff --git a/sdk/storage/azure-storage-file-share/azure/storage/fileshare/_version.py b/sdk/storage/azure-storage-file-share/azure/storage/fileshare/_version.py index 91cf474e0d6f..bfd3230dfa42 100644 --- a/sdk/storage/azure-storage-file-share/azure/storage/fileshare/_version.py +++ b/sdk/storage/azure-storage-file-share/azure/storage/fileshare/_version.py @@ -4,4 +4,4 @@ # license information. # -------------------------------------------------------------------------- -VERSION = "12.4.2" +VERSION = "12.5.0b1" diff --git a/shared_requirements.txt b/shared_requirements.txt index e945638b35e2..626927eb4f34 100644 --- a/shared_requirements.txt +++ b/shared_requirements.txt @@ -144,15 +144,15 @@ avro<2.0.0,>=1.10.0 #override azure-ai-formrecognizer msrest>=0.6.21 #override azure-ai-formrecognizer azure-core<2.0.0,>=1.8.2 #override azure-storage-blob azure-core<2.0.0,>=1.10.0 -#override azure-storage-blob msrest>=0.6.18 +#override azure-storage-blob msrest>=0.6.21 #override azure-storage-blob-changefeed azure-storage-blob>=12.5.0,<13.0.0 #override azure-storage-queue azure-core<2.0.0,>=1.10.0 #override azure-storage-queue msrest>=0.6.18 #override azure-storage-file-share msrest>=0.6.18 #override azure-storage-file-share azure-core<2.0.0,>=1.10.0 #override azure-storage-file-datalake azure-core<2.0.0,>=1.10.0 -#override azure-storage-file-datalake msrest>=0.6.18 -#override azure-storage-file-datalake azure-storage-blob<13.0.0,>=12.8.0b1 +#override azure-storage-file-datalake msrest>=0.6.21 +#override azure-storage-file-datalake azure-storage-blob<13.0.0,>=12.9.0b1 #override azure-security-attestation msrest>=0.6.0 #override azure-security-attestation azure-core<2.0.0,>=1.8.2 #override azure-data-tables msrest>=0.6.19